Úvod do výberu v systéme Oracle

Oracle je jednou z najpoužívanejších databáz v priemysle. Najbežnejšie používaný dotaz je SELECT. Tento dotaz sa používa na načítanie údajov z jednej alebo viacerých tabuliek v databáze. Dotaz SELECT sa nepoužíva iba samostatne, ale spolu s ním sa na získanie údajov z databáz v priemysle používa veľa podmienok, klauzúl a vnútorných dopytov. Dotaz SELECT nespracováva žiadne údaje v tabuľke, na ktorej sa vykonávajú. V tomto článku budeme diskutovať o rôznych spôsoboch, ako môžeme použiť SELECT dotaz v ORACLE.

Syntax:

SELECT expressions
FROM tables
(WHERE conditions);

Prvé dva riadky v syntaxi sú povinnou súčasťou syntaxe, ale (WHERE podmienky) sú voliteľné, pretože sa používajú, ak chceme na základe určitých podmienok extrahovať údaje z jednej alebo viacerých tabuliek. „Výrazy“ v syntaxe predstavujú stĺpce tabuľky. Ak chceme z tabuľky extrahovať všetky polia, namiesto syntaxe v syntaxi vložíme do výrazu '*', inak vložíme názvy stĺpcov.

Príklady implementácie výberu v systéme Oracle

Nižšie sú uvedené rôzne príklady výberu v Oracle:

1. VYBERTE všetky polia bez podmienok KDE

Na výber všetkých polí z tabuliek: Použijeme znak „*“ na označenie, že chceme extrahovať všetky polia z konkrétnej tabuľky.

Dopyt:

SELECT * from employee;

Tento dotaz načíta všetky záznamy z tabuľky, pretože k nej nie je pripojená žiadna klauzula o podmienkach.

Výkon:

2. VYBERTE všetky polia s podmienkou KDE

Teraz použijeme, kde je podmienka toho istého predtým použitého dotazu. V tomto dotaze požadujeme iba podrobnosti o konkrétnom zamestnancovi. Na dosiahnutie tohto cieľa použijeme podmienku where. pozrime sa na dotaz

Dopyt:

SELECT * from employee WHERE EMPLOYEE_ID= 'AD001';

V tomto dotaze používame EMPLOYEE_ID, pretože ide o primárny kľúč v tejto tabuľke, a preto je jedinečný.

Výkon:

3. Vyberte tabuľku z jedného poľa

V tomto príklade použijeme príkaz SELECT na výber niekoľkých polí, ale nie všetkých polí z tabuľky. Pozrime sa na dotaz.

Dopyt:

SELECT employee_id, name from employee;

Tento dotaz zobrazí iba dva stĺpce, pretože sme v tomto dotaze nepoužili znak „*“ po SELECT.

Výkon:

4. VYBERTE polia z viacerých tabuliek

V tomto príklade použijeme príkaz SELECT na načítanie údajov z viac ako jednej tabuľky pomocou spojenia JOIN. Pozrime sa na dotaz.

Dopyt:

SELECT employee.name, vehicle.vehicle_name from employee INNER JOIN vehicle ON employee.vehicle_id = vehicle.vehicle_id;

V tomto dotaze používame príkaz SELECT, ktorý spája dve tabuľky na základe podmienky, že ID vozidla z tabuľky zamestnancov by sa malo zhodovať s ID vozidla z tabuľky vozidiel. Dotaz zobrazí meno zamestnanca z tabuľky zamestnancov a názov vozidla z tabuľky vozidiel.

Výkon:

5. Zobrazte záznamy v poradí pomocou SELECT

Môžeme tiež zobraziť konkrétne záznamy v OBJEDNÁVKE, ktoré môžu byť vzostupné alebo zostupné pomocou klauzuly ORDER BY s dotazom. Pozrime sa na vzostupné aj zostupné dotazy.

a. Dopyt na vzostupné poradie

SELECT * from employee ORDER BY name ASC;

V tomto dotaze zobrazujeme všetky záznamy a sada výsledkov je zoradená podľa názvu vzostupne.
Nižšie uvedený obrázok ukazuje výstup, keď sa dotaz vykoná v SQL Developer.

Výkon:

b. Dopyt na zostupné poradie

SELECT * from employee ORDER BY name DESC;

V tomto dotaze zobrazujeme všetky záznamy z tabuľky a sada výsledkov je zoradená podľa názvu v zostupnom poradí
Nižšie uvedený obrázok ukazuje výstup, keď sa dotaz vykoná v SQL Developer.

Výkon:

6. VYBERTE dotaz pomocou klauzuly GROUP BY

Klauzulu GROUP BY používame s príkazom SELECT, keď chceme získať záznamy založené na skupinách. V zásade teda zoskupuje riadky, ktoré majú rovnaké hodnoty. Používa sa všeobecne v spojení s agregovanými funkciami. Je užitočná pri príprave súhrnných správ.

Teraz sa pozrieme na príklad a uvidíme, ako môžeme použiť GROUP BY s príkazom SELECT v databáze Oracle.

Dopyt:

SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME;

V uvedenom príklade teda v podstate zisťujeme počet zamestnancov, ktorí používajú konkrétnu značku automobilu. GROUP BY zoskupuje záznamy podľa typu automobilu a potom pomocou agregovanej funkcie COUNT vypočítame počet zamestnancov v každej skupine pomocou stĺpca employee_id, pretože je primárnym kľúčom tabuľky.

Výkon:

7. VYBERTE dotaz pomocou klauzuly HAVING

Klauzula s sa používa s príkazom select, kde chceme mať určité podmienky, ako keď kľúčové slovo nemožno použiť priamo s agregovanými funkciami. Z tohto dôvodu bola do SQL pridaná klauzula s. Uvidíme príklad, ako môžeme použiť klauzulu s príkazom select.

Dopyt:

SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME HAVING COUNT(EMPLOYEE_ID)> 2;

Ako vidíme, do klauzuly HAVING sme pridali klauzulu GROUP BY, vďaka ktorej sme schopní podmieniť, aby sa zobrazovali iba vozidlá so zamestnancami viac ako dvoma. Tu sa stáva užitočnou klauzula HAVING.

Výkon:

Ak uvidíme výstup, dostaneme iba dva záznamy namiesto piatich, ktoré sme dostali, keď sme použili funkciu GROUP BY.

záver

V tomto článku sme sa naučili syntax a dôvod, prečo používame SELECT a tiež rôzne spôsoby, ako môžeme napísať SELECT dotaz v SQL a tiež kde a z akého dôvodu by sme ich mali používať.

Odporúčané články

Toto je príručka pre výber v systéme Oracle. Tu diskutujeme úvod a rôzne príklady vybraného dotazu v SQL so syntaxou. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Pripojí sa k Oracle
  2. Oracle Data Warehousing
  3. Agilný Oracle
  4. Čo je Oracle Database
  5. 6 najčastejších dopytových príkladov vnútorného spojenia v systéme Oracle
  6. Najvyšší rozdiel medzi primárnym kľúčom a cudzím kľúčom

Kategórie: