30 Príklady SQL dotazov

30 Priklady Sql Dotazov



Plná forma SQL je jazyk Structured Query. Je to veľmi užitočný nástroj na prístup alebo úpravu štruktúry a údajov databázy. Mnoho aplikácií potrebuje databázu na trvalé uloženie potrebných údajov do databázy v štruktúrovanom formáte. MySQL, Oracle, SQL Server atď. sú populárne databázy na ukladanie údajov aplikácie. Sú nevyhnutné na to, aby sa naučili základy SQL na prístup k obsahu databázy alebo na jej úpravu. Základné použitie príkazov SQL v databáze MariaDB je uvedené v tomto návode pomocou 30 príkladov dotazov SQL.

Predpoklady

Pred precvičovaním príkladov v tomto návode musíte nainštalovať databázový server s klientom. V tomto návode sa používa databázový server a klient MariaDB.

1. Spustite nasledujúce príkazy na aktualizáciu systému:







$ sudo apt-get aktualizácia

2. Spustite nasledujúci príkaz na inštaláciu servera a klienta MariaDB:



$ sudo apt-get nainštalovať mariadb-server mariadb-client

3. Spustite nasledujúci príkaz na inštaláciu bezpečnostného skriptu pre databázu MariaDB:



$ sudo mysql_secure_installation

4. Spustite nasledujúci príkaz na reštartovanie servera MariaDB:





$ sudo /etc/init.d/mariadb reštart

6. Spustite nasledujúci príkaz na prihlásenie na server MariaDB:

$ sudo mariadb -u root -p

Zoznam príkladov SQL dotazov



  1. Vytvorte databázu
  2. Vytvorte tabuľky
  3. Premenujte názov tabuľky
  4. Pridajte do tabuľky nový stĺpec
  5. Odstráňte stĺpec z tabuľky
  6. Vložte jeden riadok do tabuľky
  7. Vložte do tabuľky viacero riadkov
  8. Prečítajte si všetky konkrétne polia z tabuľky
  9. Prečítajte si tabuľku po filtrovaní údajov z tabuľky
  10. Prečítajte si tabuľku po filtrovaní údajov na základe booleovskej logiky
  11. Prečítajte si tabuľku po filtrovaní riadkov na základe rozsahu údajov
  12. Prečítajte si tabuľku po zoradení tabuľky na základe konkrétnych stĺpcov.
  13. Prečítajte si tabuľku nastavením alternatívneho názvu stĺpca
  14. Spočítajte celkový počet riadkov v tabuľke
  15. Prečítajte si údaje z viacerých tabuliek
  16. Prečítajte si tabuľku zoskupením konkrétnych polí
  17. Po vynechaní duplicitných hodnôt si prečítajte tabuľku
  18. Prečítajte si tabuľku obmedzením počtu riadkov
  19. Prečítajte si tabuľku na základe čiastočnej zhody
  20. Spočítajte súčet konkrétneho poľa tabuľky
  21. Nájdite maximálnu a minimálnu hodnotu konkrétneho poľa
  22. Prečítajte si údaje o konkrétnej časti poľa
  23. Prečítajte si údaje tabuľky po zreťazení
  24. Prečítajte si údaje tabuľky po matematickom výpočte
  25. Vytvorte pohľad na tabuľku
  26. Aktualizujte tabuľku na základe konkrétneho stavu
  27. Odstráňte údaje tabuľky na základe konkrétnej podmienky
  28. Odstráňte všetky záznamy z tabuľky
  29. Pustite stôl
  30. Zrušte databázu

Vytvorte databázu

Predpokladajme, že musíme navrhnúť jednoduchú databázu pre systém správy knižníc. Na vykonanie tejto úlohy je potrebné na serveri vytvoriť databázu, ktorá obsahuje viacero relačných tabuliek. Po prihlásení na databázový server spustite nasledujúci príkaz na vytvorenie databázy s názvom „knižnica“ na databázovom serveri MariaDB:

VYTVORIŤ DATABÁZA knižnica;

Výstup ukazuje, že databáza knižnice je vytvorená na serveri:

Spustite nasledujúci príkaz na výber databázy zo servera na vykonanie rôznych typov databázových operácií:

POUŽÍVAŤ knižnica;

Výstup ukazuje, že je vybratá databáza knižnice:

Vytvorte tabuľky

Ďalším krokom je vytvorenie potrebných tabuliek pre databázu na ukladanie údajov. V tejto časti návodu sú vytvorené tri tabuľky. Sú to tabuľky s knihami, členmi a informáciami o výpožičke.

  1. V tabuľke kníh sú uložené všetky údaje týkajúce sa knihy.
  2. V tabuľke členov sú uložené všetky informácie o členoch, ktorí si požičajú knihu z knižnice.
  3. V tabuľke výpožička_info sú uložené informácie o tom, ktorú knihu si ktorý člen vypožičal.

1. Knihy Tabuľka

Spustite nasledujúci príkaz SQL na vytvorenie tabuľky s názvom „knihy“ v databáze „knižnica“, ktorá obsahuje sedem polí a jeden primárny kľúč. Tu je pole „id“ primárnym kľúčom a typ údajov je int. Atribút auto_increment sa používa pre pole „id“. Hodnota tohto poľa sa teda automaticky zvýši, keď sa vloží nový riadok. Dátový typ varchar sa používa na ukladanie údajov reťazca s premennou dĺžkou. V poliach názov, autor, publikácia a isbn sú uložené údaje reťazca. Typ údajov polí total_copy a price sú int. Takže tieto polia ukladajú číselné údaje.

VYTVORIŤ TABLE knihy (
id INT AUTOMATICKÝ PRÍRASTOK ,
titul VARCHAR ( päťdesiat ) ,
autora VARCHAR ( päťdesiat ) ,
zverejnenie VARCHAR ( 100 ) ,
isbn VARCHAR ( 30 ) ,
total_copy INT ,
cena INT ,
PRIMÁRNY KEY ( id ) ) ;

Výstup ukazuje, že tabuľka „knihy“ bola úspešne vytvorená:

2. Členovia Tabuľka

Spustite nasledujúci príkaz SQL na vytvorenie tabuľky s názvom „členovia“ v databáze „knižnice“, ktorá obsahuje 5 polí a jeden primárny kľúč. Pole „id“ má atribút auto_increment ako tabuľka „books“. Typ údajov ostatných polí je varchar. Takže tieto polia ukladajú údaje reťazca.

VYTVORIŤ TABLE členov (
id INT AUTOMATICKÝ PRÍRASTOK ,
názov VARCHAR ( päťdesiat ) ,
adresu VARCHAR ( 200 ) ,
kontakt_č VARCHAR ( pätnásť ) ,
email VARCHAR ( päťdesiat ) ,
PRIMÁRNY KEY ( id ) ) ;

Výstup ukazuje, že tabuľka „členovia“ bola úspešne vytvorená:

3. Požičať_info Tabuľka

Spustite nasledujúci príkaz SQL a vytvorte tabuľku s názvom „borrow_info“ v databáze „knižnica“, ktorá obsahuje 6 polí. Tu je pole „id“ primárnym kľúčom, ale atribút auto_increment sa pre toto pole nepoužíva. Jedinečná hodnota sa teda do tohto poľa vloží manuálne, keď sa do tabuľky vloží nový záznam. Polia book_id a member_id sú cudzie kľúče pre túto tabuľku; to sú primárne kľúče tabuľky „knihy“ a tabuľky „členovia“. Typ údajov polí dátum_požičania a dátum_návratu je dátum. Tieto dve polia teda ukladajú hodnotu dátumu vo formáte „RRRR-MM-DD“.

VYTVORIŤ TABLE info_požičiavanie (
id INT ,
dátum_požičiavania DÁTUM ,
book_id INT ,
member_id INT ,
dátum návratu DÁTUM ,
POSTAVENIE VARCHAR ( 10 ) ,
PRIMÁRNY KEY ( id ) ,
ZAHRANIČNÝ KEY ( book_id ) LITERATÚRA knihy ( id ) ,
ZAHRANIČNÝ KEY ( member_id ) LITERATÚRA členov ( id ) ) ;

Výstup ukazuje, že tabuľka „borrow_info“ bola úspešne vytvorená:

Premenujte názov tabuľky

Príkaz ALTER TABLE možno v príkazoch SQL použiť na viaceré účely. Spustite nasledujúci príkaz ALTER TABLE, aby ste zmenili názov tabuľky „borrow_info“ na „book_borrow_info“. Ďalej, príkaz SHOW tables možno použiť na kontrolu, či sa názov tabuľky zmenil alebo nie.

ALTER TABLE info_požičiavanie PREMENOVAŤ TO info o_knihe;
ŠOU TABUĽKY ;

Výstup ukazuje, že názov tabuľky bol úspešne zmenený a názov tabuľky loan_info bol zmenený na book_borrow_info:

Pridajte do tabuľky nový stĺpec

Príkaz ALTER TABLE možno použiť na pridanie alebo odstránenie jedného alebo viacerých stĺpcov po vytvorení tabuľky. Nasledujúci príkaz ALTER TABLE pridá k členom tabuľky nové pole s názvom “status”. Príkaz DESCRIBE sa používa na zobrazenie toho, či bola štruktúra tabuľky zmenená alebo nie.

ALTER TABLE členov PRIDAŤ POSTAVENIE VARCHAR ( 10 ) ;
POPISOVAŤ členov;

Výstup ukazuje, že do tabuľky „členovia“ sa pridá nový stĺpec „stav“ a typ údajov tabuľky je varchar:

Odstráňte stĺpec z tabuľky

Nasledujúci príkaz ALTER TABLE vymaže pole s názvom „stav“ z tabuľky „členovia“. Príkaz DESCRIBE sa používa na zobrazenie toho, či bola štruktúra tabuľky zmenená alebo nie.

ALTER TABLE členov POKLES STĹPEC POSTAVENIE ;
POPISOVAŤ členov;

Výstup ukazuje, že stĺpec „stav“ je odstránený z tabuľky „členovia“:

Vložte jeden riadok do tabuľky

Príkaz INSERT INTO sa používa na vloženie jedného alebo viacerých riadkov do tabuľky. Spustite nasledujúci príkaz SQL a vložte jeden riadok do tabuľky „knihy“. Tu je pole „id“ z tohto dotazu vynechané, pretože sa vloží automaticky do záznamu, keď sa vloží nový záznam pre atribút automatického prírastku. Ak sa toto pole používa v príkaze INSERT, hodnota musí byť NULL.

VLOŽIŤ DO knihy ( titul , autora , zverejnenie , isbn , total_copy , cena )
HODNOTY ( „SQL za 10 minút“ , 'Ben Forta' , „Sams Publishing“ , '784534235' , 5 , 39 ) ;

Výstup ukazuje, že záznam bol úspešne pridaný do tabuľky „knihy“:

Údaje je možné vložiť do tabuľky pomocou klauzuly SET, kde je každá hodnota poľa priradená samostatne. Spustite nasledujúci príkaz SQL na vloženie jedného riadka do tabuľky “členovia” pomocou klauzúl INSERT INTO a SET. Pole „id“ je v tomto dotaze tiež vynechané ako v predchádzajúcom príklade z rovnakého dôvodu.

VLOŽIŤ DO členov
SET názov = 'John Sina' , adresu = '34, Dhanmondi 9/A, Dháka' , kontakt_č = '+14844731336' , email = 'john@gmail.com' ;

Výstup ukazuje, že záznam bol úspešne pridaný do tabuľky členov:

Spustite nasledujúci príkaz SQL na vloženie jedného riadku do tabuľky „book_borrow_info“:

VLOŽIŤ DO info o_knihe ( id , dátum_požičiavania , book_id , member_id , dátum návratu , POSTAVENIE )
HODNOTY ( 1 , '2023-03-12' , 1 , 1 , '2023-03-19' , 'požičané' ) ;

Výstup ukazuje, že záznam je pridaný do tabuľky „book_borrow_info“:

Vložte do tabuľky viacero riadkov

Niekedy to vyžaduje pridanie viacerých záznamov naraz pomocou jedného príkazu INSERT INTO. Spustite nasledujúci príkaz SQL na vloženie troch záznamov do tabuľky „knihy“ pomocou jediného príkazu INSERT INTO. V tomto prípade sa klauzula VALUES použije raz a údaje každého záznamu sú oddelené čiarkou.

VLOŽIŤ DO knihy ( titul , autora , zverejnenie , isbn , total_copy , cena )
HODNOTY
( 'SQL Cookbook (O'Reilly)' , 'Anthony Molinaro' , 'O'Reilly' , '2467777532' , 10 , 49 ) ,
( 'SQL dotazov pre obyčajných smrteľníkov' , 'John Viescas' , 'Addison-Wesley' , '673456234' , pätnásť , 35 ) ,
( 'Učíme sa SQL' , 'Alan Beaulieu' , 'Penguin Books Ltd' , '534433222' , 12 , Štyri, päť ) ;

Výstup ukazuje, že do tabuľky „knihy“ sú pridané tri záznamy:

Prečítajte si všetky konkrétne polia z tabuľky

Príkaz SELECT sa používa na čítanie údajov z tabuľky „databáza“. Symbol „*“ sa používa na označenie všetkých polí tabuľky v príkaze SELECT. Ak chcete prečítať všetky záznamy tabuľky kníh, spustite nasledujúci príkaz SQL:

VYBRAŤ * OD knihy;

Výstup zobrazuje všetky záznamy tabuľky kníh, ktorá obsahuje 4 záznamy:

Ak chcete prečítať všetky záznamy troch polí tabuľky „členovia“, spustite nasledujúci príkaz SQL:

VYBRAŤ názov , email , kontakt_č OD členov;

Výstup zobrazuje všetky záznamy troch polí tabuľky „členovia“:

Prečítajte si tabuľku po filtrovaní údajov z tabuľky

Klauzula WHERE sa používa na čítanie údajov z tabuľky na základe jednej alebo viacerých podmienok. Spustite nasledujúci príkaz SELECT na prečítanie všetkých záznamov všetkých polí tabuľky „knihy“, kde je meno autora „John Viescas“.

VYBRAŤ * OD knihy KDE autora = 'John Viescas' ;

Tabuľka „knihy“ obsahuje jeden záznam, ktorý zodpovedá podmienke klauzuly WHERE, ktorá je zobrazená vo výstupe:

Prečítajte si tabuľku po filtrovaní údajov na základe booleovskej logiky

Logická logika AND sa používa na definovanie viacerých podmienok v klauzule WHERE, ktorá vráti hodnotu true, ak všetky podmienky vrátia hodnotu true. Spustite nasledujúci príkaz SELECT na prečítanie všetkých záznamov všetkých polí tabuľky „knihy“, kde hodnota poľa total_copy je väčšia ako 10 a hodnota poľa ceny je menšia ako 45 pomocou logického AND.

VYBRAŤ * OD knihy KDE total_copy > 10 A cena < Štyri, päť ;

Tabuľka kníh obsahuje jeden záznam, ktorý zodpovedá podmienke klauzuly WHERE, ktorá je zobrazená vo výstupe:

Logická logika OR sa používa na definovanie viacerých podmienok v klauzule WHERE, ktorá vráti hodnotu true, ak niektorá z podmienok vráti hodnotu true. Spustite nasledujúci príkaz SELECT, aby ste si prečítali všetky záznamy všetkých polí tabuľky „knihy“, kde hodnota poľa total_copy je väčšia ako 10 alebo hodnota poľa ceny je väčšia ako 40.

VYBRAŤ * OD knihy KDE total_copy > 10 ALEBO cena > 40 ;

Tabuľka kníh obsahuje tri záznamy, ktoré zodpovedajú podmienke klauzuly WHERE, ktorá je zobrazená vo výstupe:

Logická logika NOT sa používa na vrátenie false, keď je podmienka pravdivá, a vráti true, keď je podmienka nepravdivá. Spustite nasledujúci príkaz SELECT na prečítanie všetkých záznamov všetkých polí tabuľky „knihy“, kde hodnota poľa autora nie je „Addison-Wesley“.

VYBRAŤ * OD knihy KDE NIE autora = 'Addison-Wesley' ;

Tabuľka „knihy“ obsahuje tri záznamy, ktoré zodpovedajú podmienke klauzuly WHERE, ktorá je zobrazená vo výstupe:

Prečítajte si tabuľku po filtrovaní riadkov na základe rozsahu údajov

Klauzula BETWEEN sa používa na čítanie rozsahu údajov z databázovej tabuľky. Spustite nasledujúci príkaz SELECT na prečítanie všetkých záznamov všetkých polí tabuľky „knihy“, kde je hodnota poľa ceny medzi 40 až 50.

VYBRAŤ * OD knihy KDE cena MEDZI 40 A päťdesiat ;

Tabuľka kníh obsahuje dva záznamy, ktoré zodpovedajú podmienke klauzuly WHERE, ktorá je zobrazená vo výstupe. Knihy s cenovými hodnotami 39 a 35 sú zo sady výsledkov vynechané, pretože sú mimo rozsahu.

Prečítajte si tabuľku po zoradení tabuľky

Klauzula ORDER BY sa používa na zoradenie sady výsledkov príkazu SELECT vo vzostupnom alebo zostupnom poradí. Ak sa použije klauzula ORDER BY bez ASC alebo DESC, sada výsledkov je štandardne zoradená vzostupne. Nasledujúci príkaz SELECT načíta zoradené záznamy z tabuľky kníh na základe poľa názvu:

VYBRAŤ * OD knihy OBJEDNAŤ BY titul;

Údaje poľa názvu tabuľky „knihy“ sú vo výstupe zoradené vzostupne. Kniha „Učíme sa SQL“ je na prvom mieste v abecednom poradí, ak je pole názvu tabuľky „knihy“ zoradené vzostupne.

Prečítajte si tabuľku nastavením alternatívneho názvu stĺpca

Alternatívny názov stĺpca sa používa v dotaze, aby bola množina výsledkov čitateľnejšia. Alternatívny názov sa nastavuje pomocou kľúčového slova „AS“. Nasledujúci príkaz SQL vráti hodnoty polí title a author nastavením alternatívnych názvov.

VYBRAŤ titul AS „Názov knihy“. , autora AS „Meno autora“.
OD knihy;

Pole názvu sa zobrazí s alternatívnym názvom, ktorým je „Názov knihy“ a pole autora sa zobrazí s alternatívnym názvom, ktorým je „Meno autora“ vo výstupe.

Spočítajte celkový počet riadkov v tabuľke

COUNT() je súhrnná funkcia SQL, ktorá sa používa na počítanie celkového počtu riadkov na základe konkrétneho poľa alebo všetkých polí. Symbol “*” sa používa na označenie všetkých polí a COUNT(*) sa používa na počítanie všetkých záznamov v tabuľke.

Nasledujúci dotaz počíta celkové záznamy tabuľky kníh:

VYBRAŤ COUNT ( * ) AS 'Celkový počet kníh'. OD knihy;

Vo výstupe sa zobrazia štyri záznamy v tabuľke „knihy“:

Nasledujúci dotaz počíta celkový počet riadkov tabuľky „členovia“ na základe poľa „id“:

VYBRAŤ COUNT ( id ) AS 'Počet členov'. OD členov;

Tabuľka „členovia“ má dve hodnoty id, ktoré sú vytlačené vo výstupe:

Prečítajte si údaje z viacerých tabuliek

Predchádzajúce príkazy SELECT získali údaje z jednej tabuľky. Ale príkaz SELECT možno použiť na získanie údajov z dvoch alebo viacerých tabuliek. Nasledujúci dotaz SELECT načíta hodnoty polí názvu a autora z tabuľky „knihy“ a dátum vypožičania z tabuľky „informácie o_knihe“.

VYBRAŤ titul , autora , dátum_požičiavania
OD knihy , info o_knihe
KDE knihy . id = info o_knihe . book_id;

Nasledujúci výstup ukazuje, že kniha „SQL za 10 minút“ sa vypožičiava dvakrát a kniha „Kuchárka SQL (O’Reilly)“ sa vypožičiava raz:

Dáta je možné získať z viacerých tabuliek pomocou rôznych typov JOINS, ako je INNER JOIN, OUTER JOIN atď., ktoré nie sú vysvetlené v tomto návode.

Prečítajte si tabuľku zoskupením konkrétnych polí

Klauzula GROUP BY sa používa na čítanie záznamov z tabuľky zoskupením riadkov na základe jedného alebo viacerých polí. Tento typ dotazu sa nazýva súhrnný dotaz. Ak chcete skontrolovať použitie klauzuly GROUP BY, musíte do tabuliek vložiť viacero riadkov. Spustite nasledujúce príkazy INSERT, aby ste vložili jeden záznam do tabuľky „členovia“ a dva záznamy do tabuľky „book_borrow_info“.

VLOŽIŤ DO členov
SET názov = 'Ona Hasan' , adresu = '11/A, Jigatola, Dháka' , kontakt_č = '+8801734563423' , email = 'ona@gmail.com' ;
VLOŽIŤ DO info o_knihe ( id , dátum_požičiavania , book_id , member_id , dátum návratu , POSTAVENIE )
HODNOTY ( 2 , '2023-04-10' , 1 , 1 , '2023-04-15' , 'Vrátený' ) ;
VLOŽIŤ DO info o_knihe ( id , dátum_požičiavania , book_id , member_id , dátum návratu , POSTAVENIE )
HODNOTY ( 3 , '2023-05-20' , 2 , 1 , '2023-05-30' , 'požičané' ) ;

Po vložení údajov vykonaním predchádzajúcich dotazov spustite nasledujúci príkaz SELECT, ktorý spočíta celkový počet vypožičaných kníh a meno člena na základe každého člena pomocou klauzuly GROUP BY. Tu funkcia COUNT() funguje na poli, ktoré sa používa na preskupenie záznamov pomocou klauzuly GROUP BY. Na zoskupenie sa tu používa pole book_id tabuľky „členovia“.

VYBRAŤ COUNT ( book_id ) AS 'Celkový počet vypožičaných kníh'. , názov AS „Meno člena“. OD knihy , členov , info o_knihe KDE knihy . id = info o_knihe . book_id A členov . id = info o_knihe . member_id SKUPINA BY info o_knihe . member_id;

Podľa údajov v tabuľkách „členovia“ a „informácie o_knihách“ si „John Sina“ vypožičal 2 knihy a „Ella Hasan“ 1 knihu.

Po vynechaní duplicitných hodnôt si prečítajte tabuľku

Niekedy sa vo výslednej sade príkazu SELECT vygenerujú duplicitné údaje na základe údajov tabuľky, ktoré nie sú potrebné. Napríklad nasledujúci príkaz SELECT vráti duplicitné záznamy pre údaje tabuľky „book_borrow_info“.

VYBRAŤ názov , email
OD členov , info o_knihe
KDE info o_knihe . member_id = členov . id;

Vo výstupe sa ten istý záznam objavuje dvakrát, pretože člen „John Sina“ si požičal dve knihy. Tento problém je možné vyriešiť pomocou kľúčového slova DISTINCT. Odstráni duplicitné záznamy z výsledku dotazu.

Nasledujúci príkaz SELECT generuje jedinečné záznamy sady výsledkov z tabuliek „members“ a „book_borrow_info“ po vynechaní duplicitných hodnôt pomocou kľúčového slova DISTINCT v dotaze.

VYBRAŤ ODLIŠNÝ názov , email
OD členov , info o_knihe
KDE info o_knihe . member_id = členov . id;

Výstup ukazuje, že duplicitná hodnota je odstránená zo sady výsledkov:

Prečítajte si tabuľku obmedzením počtu riadkov

Niekedy to vyžaduje načítanie konkrétneho počtu záznamov od začiatku sady výsledkov, konca sady výsledkov alebo stredu sady výsledkov z databázovej tabuľky obmedzením počtu riadkov. Dá sa to urobiť mnohými spôsobmi. Pred obmedzením riadkov spustite nasledujúci príkaz SQL, aby ste skontrolovali, koľko záznamov existuje v tabuľke kníh:

VYBRAŤ * OD knihy;

Výstup ukazuje, že tabuľka kníh má štyri záznamy:

Nasledujúci príkaz SELECT načíta prvé dva záznamy z tabuľky „knihy“ pomocou klauzuly LIMIT s hodnotou 2:

VYBRAŤ * OD knihy LIMIT 2 ;

Vyhľadajú sa prvé dva záznamy tabuľky „knihy“, ktorá sa zobrazí vo výstupe:

Klauzula FETCH je alternatívou klauzuly LIMIT a jej použitie je znázornené v nasledujúcom príkaze SELECT. Prvé 3 záznamy tabuľky „knihy“ sa získajú pomocou klauzuly FETCH FIRST 3 ROWS ONLY v príkaze SELECT:

VYBRAŤ * OD knihy FETCH NAJPRV 3 RIADKY IBA ;

Výstup zobrazuje prvé 3 záznamy tabuľky „knihy“:

Dva záznamy z 3 rd riadok tabuľky kníh sa získajú vykonaním nasledujúceho príkazu SELECT. Klauzula LIMIT sa tu používa s hodnotou 2, 2, kde prvá 2 definuje počiatočnú pozíciu riadku tabuľky, ktorý začína počítať od 0 a druhá 2 definuje počet riadkov, ktoré sa začínajú počítať od počiatočnej pozície.

VYBRAŤ * OD knihy LIMIT 2 , 2 ;

Po vykonaní predchádzajúceho dotazu sa zobrazí nasledujúci výstup:

Záznamy z konca tabuľky je možné čítať zoradením tabuľky v zostupnom poradí na základe automaticky zvýšenej hodnoty primárneho kľúča a pomocou klauzuly LIMIT. Spustite nasledujúci príkaz SELECT, ktorý prečíta posledné 2 záznamy z tabuľky „knihy“. Tu je sada výsledkov zoradená v zostupnom poradí na základe poľa „id“.

VYBRAŤ * OD knihy OBJEDNAŤ BY id DESC LIMIT 2 ;

Posledné dva záznamy tabuľky kníh sú zobrazené v nasledujúcom výstupe:

Prečítajte si tabuľku na základe čiastočnej zhody

Klauzula LIKE sa používa so symbolom „%“ na získanie záznamov z tabuľky čiastočným párovaním. Nasledujúci príkaz SELECT vyhľadáva záznamy z tabuľky „knihy“, kde pole autora obsahuje na začiatku hodnoty „John“ pomocou klauzuly LIKE. Tu sa na konci hľadaného reťazca používa symbol „%“.

VYBRAŤ * OD knihy KDE autora PÁČI SA MI TO 'John%' ;

V tabuľke „books“ existuje iba jeden záznam, ktorý obsahuje reťazec „John“ na začiatku hodnoty poľa autora.

Nasledujúci príkaz SELECT vyhľadáva záznamy z tabuľky „knihy“, kde pole publikácie obsahuje na konci hodnoty „Ltd“ pomocou klauzuly LIKE. Tu sa na začiatku hľadaného reťazca používa symbol „%“:

VYBRAŤ * OD knihy KDE zverejnenie PÁČI SA MI TO '%Ltd' ;

V tabuľke „books“ existuje iba jeden záznam, ktorý obsahuje reťazec „Ltd“ na konci poľa publikácie.

Nasledujúci príkaz SELECT vyhľadáva záznamy z tabuľky “knihy”, kde pole názvu obsahuje “Dotazy” kdekoľvek z hodnoty pomocou klauzuly LIKE. Tu sa symbol „%“ používa na oboch stranách hľadaného reťazca:

VYBRAŤ * OD knihy KDE titul PÁČI SA MI TO '%Queries%' ;

V tabuľke „books“ existuje iba jeden záznam, ktorý obsahuje reťazec „Queries“ v poli názvu.

Spočítajte súčet konkrétneho poľa tabuľky

SUM() je ďalšia užitočná agregačná funkcia SQL, ktorá vypočítava súčet hodnôt ľubovoľného číselného poľa tabuľky. Táto funkcia má jeden argument, ktorý musí byť číselný. Nasledujúci príkaz SQL vypočíta súčet všetkých hodnôt cenového poľa tabuľky „knihy“, ktorá obsahuje celočíselné hodnoty.

VYBRAŤ SUM ( cena ) AS 'Celková cena knihy'.
OD knihy;

Výstup zobrazuje súčtovú hodnotu všetkých hodnôt cenového poľa tabuľky „knihy“. Štyri hodnoty poľa ceny sú 39, 49, 35 a 45. Súčet týchto hodnôt je 168.

Nájdite maximálnu a minimálnu hodnotu konkrétneho poľa

Agregačné funkcie MIN() a MAX() sa používajú na zistenie minimálnych a maximálnych hodnôt konkrétneho poľa tabuľky. Obe funkcie majú jeden argument, ktorý musí byť číselný. Nasledujúci príkaz SQL zistí hodnotu minimálnej ceny z tabuľky „knihy“, ktorá je celé číslo.

VYBRAŤ MIN ( cena ) AS „Kniha minimálnych nákladov“. OD knihy;

Tridsaťpäť (35) je minimálna hodnota cenového poľa, ktoré je vytlačené vo výstupe.

Nasledujúci príkaz SQL zisťuje maximálnu hodnotu ceny z tabuľky „knihy“:

VYBRAŤ MAX ( cena ) AS „Kniha maximálnych nákladov“. OD knihy;

Štyridsaťdeväť (49) je maximálna hodnota poľa ceny, ktorá sa vytlačí vo výstupe.

Prečítajte si konkrétnu časť údajov alebo poľa

Funkcia SUBSTR() sa používa v príkaze SQL na získanie konkrétnej časti údajov reťazca alebo hodnoty konkrétneho poľa tabuľky. Táto funkcia obsahuje tri argumenty. Prvý argument obsahuje hodnotu reťazca alebo hodnotu poľa tabuľky, ktorá je reťazcom. Druhý argument obsahuje začiatočnú pozíciu podreťazca, ktorý sa získa z prvého argumentu a počítanie tejto hodnoty začína od 1. Tretí argument obsahuje dĺžku podreťazca, ktorý sa začína počítať od začiatočnej pozície.

Nasledujúci príkaz SELECT vystrihne a vytlačí prvých päť znakov z reťazca „Learn SQL Basics“, kde počiatočná pozícia je 1 a dĺžka je 5:

VYBRAŤ SUBSTR ( 'Naučte sa základy SQL' , 1 , 5 ) AS Hodnota podreťazca ;

Prvých päť znakov reťazca „Learn SQL Basics“ je „Learn“, ktorý je vytlačený vo výstupe.

Nasledujúci príkaz SELECT vystrihne a vytlačí SQL z reťazca „Learn SQL Basics“, kde počiatočná pozícia je 7 a dĺžka je 3:

VYBRAŤ SUBSTR ( 'Naučte sa základy SQL' , 7 , 3 ) AS Hodnota podreťazca ;

Po vykonaní predchádzajúceho dotazu sa zobrazí nasledujúci výstup:

Nasledujúci príkaz SELECT vystrihne a vytlačí prvých päť znakov z poľa názvu tabuľky „členovia“:

VYBRAŤ SUBSTR ( názov , 1 , 5 ) AS „Meno člena“. OD členov;

Výstup zobrazuje prvých päť znakov každej hodnoty poľa názvu tabuľky „členovia“.

Prečítajte si údaje tabuľky po zreťazení

Funkcia CONCAT() sa používa na generovanie výstupu kombináciou jedného alebo viacerých polí tabuľky alebo pridaním údajov reťazca alebo konkrétnej hodnoty poľa tabuľky. Nasledujúci príkaz SQL načíta hodnoty polí názvu, autora a ceny tabuľky „knihy“ a hodnota reťazca „$“ sa pridá ku každej hodnote poľa ceny pomocou funkcie CONCAT().

VYBRAŤ titul AS Názov , autora AS Autor , CONCAT ( '$' , cena ) AS cena
OD knihy;

Hodnoty cenového poľa sa vytlačia na výstupe zreťazením s reťazcom „$“.

Spustite nasledujúci príkaz SQL, aby ste pomocou funkcie CONCAT() skombinovali hodnoty polí názvu a autora tabuľky „books“ s hodnotou reťazca „by“:

VYBRAŤ CONCAT ( titul , ' od ' , autora ) AS `Názov knihy s autorom`
OD knihy;

Po vykonaní predchádzajúceho dotazu SELECT sa zobrazí nasledujúci výstup:

Prečítajte si údaje tabuľky po matematickom výpočte

Akýkoľvek matematický výpočet je možné vykonať v čase získavania hodnôt tabuľky pomocou príkazu SELECT. Spustite nasledujúci príkaz SQL a prečítajte si id, názov, cenu a hodnotu zľavnenej ceny po výpočte 5% zľavy.

VYBRAŤ id , titul , cena AS 'Bežná cena'. , cena - ( cena * 5 / 100 ) AS „Zľavnená cena“.
OD knihy;

Nasledujúci výstup zobrazuje bežnú cenu a zľavnenú cenu každej knihy:

Vytvorte pohľad na tabuľku

VIEW sa používa na zjednodušenie dotazu a poskytuje dodatočné zabezpečenie databázy. Funguje ako virtuálna tabuľka, ktorá sa generuje z jednej alebo viacerých tabuliek. Spôsob vytvorenia a spustenia jednoduchého VIEW na základe tabuľky „členovia“ je znázornený v nasledujúcom príklade. VIEW sa vykonáva pomocou príkazu SELECT. Nasledujúci príkaz SQL vytvorí ZOBRAZENIE tabuľky „členovia“ s poľami id, name, address a contact_no. Príkaz SELECT vykoná member_view.

VYTVORIŤ VYHLIADKA member_view AS
VYBRAŤ id , názov , adresu , kontakt_č
OD členov;

VYBRAŤ * OD member_view;

Po vytvorení a spustení zobrazenia sa zobrazí nasledujúci výstup:

Aktualizujte tabuľku na základe konkrétneho stavu

Príkaz UPDATE sa používa na aktualizáciu obsahu tabuľky. Ak sa vykoná akýkoľvek dotaz UPDATE bez klauzuly WHERE, aktualizujú sa všetky polia, ktoré sa používajú v dotaze UPDATE. Preto je potrebné použiť príkaz UPDATE so správnou klauzulou WHERE. Spustite nasledujúci príkaz UPDATE na aktualizáciu polí name a contact_no, kde hodnota poľa id je 1. Potom vykonajte príkaz SELECT, aby ste skontrolovali, či sú údaje aktualizované správne alebo nie.

AKTUALIZOVAŤ členov
SET názov = 'Janifer' , kontakt_č = '+880175621223'
KDE id = 1 ;

VYBRAŤ * OD členov;

Nasledujúci výstup ukazuje, že príkaz UPDATE bol úspešne vykonaný. Hodnota poľa mena sa zmení na „Janifer“ a pole contact_no sa zmení na „+880175621223“ záznamu, ktorý obsahuje hodnotu id 1 pomocou dopytu UPDATE:

Odstráňte údaje tabuľky na základe konkrétnej podmienky

Príkaz DELETE sa používa na odstránenie konkrétneho obsahu alebo celého obsahu tabuľky. Ak sa vykoná akýkoľvek dotaz DELETE bez klauzuly WHERE, všetky polia sa vymažú. Preto je potrebné použiť príkaz UPDATE so správnou klauzulou WHERE. Spustite nasledujúci príkaz DELETE, aby ste odstránili všetky údaje z tabuľky kníh, kde je hodnota id 4. Potom vykonajte príkaz SELECT, aby ste skontrolovali, či sú údaje vymazané správne alebo nie.

VYMAZAŤ OD knihy KDE id = 4 ;
VYBRAŤ * OD knihy;

Nasledujúci výstup ukazuje, že príkaz DELETE bol úspešne vykonaný. 4 th záznam tabuľky kníh sa odstráni pomocou dotazu DELETE:

Odstráňte všetky záznamy z tabuľky

Spustite nasledujúci príkaz DELETE, aby ste odstránili všetky záznamy z tabuľky „knihy“, kde je vynechaná klauzula WHERE. Potom vykonajte dotaz SELECT na kontrolu obsahu tabuľky.

VYMAZAŤ OD info o_knihe;
VYBRAŤ * OD info o_knihe;

Nasledujúci výstup ukazuje, že tabuľka „knihy“ je po vykonaní dopytu DELETE prázdna:

Ak ktorákoľvek tabuľka obsahuje atribút automatického prírastku a všetky záznamy sú z tabuľky vymazané, pole automatického prírastku začne počítať od posledného prírastku po vložení nového záznamu po vyprázdnení tabuľky. Tento problém je možné vyriešiť pomocou príkazu TRUNCATE. Používa sa tiež na odstránenie všetkých záznamov z tabuľky, ale pole automatického prírastku začne počítať od 1 po odstránení všetkých záznamov z tabuľky. SQL príkazu TRUNCATE je znázornený nasledovne:

TRUNCATE (skrátiť). info o_knihe;

Pustite stôl

Jedna alebo viac tabuliek možno zrušiť kontrolou alebo bez kontroly, či tabuľka existuje alebo nie. Nasledujúce príkazy DROP vymazávajú tabuľku „book_borrow_info“ a príkaz „SHOW tables“ kontroluje, či tabuľka na serveri existuje alebo nie.

POKLES TABLE info o_knihe;
ŠOU TABUĽKY ;

Výstup ukazuje, že tabuľka „book_borrow_info“ je zrušená.

Tabuľka môže byť zrušená po kontrole, či existuje na serveri alebo nie. Spustite nasledujúci príkaz DROP na vymazanie tabuľky kníh a členov, ak tieto tabuľky na serveri existujú. Ďalej príkaz „SHOW tables“ skontroluje, či tabuľky na serveri existujú alebo nie.

POKLES TABLE AK EXISTUJE knihy , členov;
ŠOU TABUĽKY ;

Nasledujúci výstup ukazuje, že tabuľky sú zo servera odstránené:

Zrušte databázu

Ak chcete odstrániť databázu „knižnice“ zo servera, spustite nasledujúci príkaz SQL:

POKLES DATABÁZA knižnica;

Výstup ukazuje, že databáza je zrušená.

Záver

Najčastejšie používané príklady SQL dotazov na vytváranie, prístup, úpravu a mazanie databázy servera MariaDB sú zobrazené v tomto návode vytvorením databázy a troch tabuliek. Použitie rôznych príkazov SQL je vysvetlené na veľmi jednoduchých príkladoch, ktoré pomôžu novému používateľovi databázy naučiť sa správne základy SQL. Tu sú vynechané použitia zložitých dopytov. Používatelia novej databázy budú môcť začať pracovať s akoukoľvek databázou po správnom prečítaní tohto návodu.