Izberite v Oracle - Različni načini za pisanje izbranih poizvedb v SQL

Kazalo:

Anonim

Uvod v izbor v programu Oracle

Oracle je ena najbolj razširjenih baz podatkov v industriji. Najpogosteje se uporablja poizvedba SELECT. Ta poizvedba se uporablja za pridobivanje podatkov iz ene ali več tabel v bazi podatkov. Poizvedba SELECT se ne uporablja samo, ampak z njo se za pridobitev podatkov iz podatkovnih zbirk v industriji uporabljajo številni pogoji, določbe in notranje poizvedbe. SELECT poizvedba ne manipulira z nobenimi podatki v tabeli, v kateri se izvajajo. V tem članku bomo obravnavali različne načine, kako lahko v ORACLE uporabimo poizvedbo SELECT.

Sintaksa:

SELECT expressions
FROM tables
(WHERE conditions);

Prvi dve vrstici skladnje sta obvezni del skladnje, vendar (pogoji KJE) nista izbirni, saj se uporabljajo, če želimo izvleči podatke iz ene ali več tabel na podlagi nekaterih pogojev. "Izrazi" v sintaksi predstavljajo stolpce tabele. Če želimo izvleči vsa polja iz tabele, v sintakso postavimo '*' namesto 'izrazov', sicer vstavimo imena stolpcev.

Primeri za izvajanje Select v Oracle

Spodaj so različni primeri izbire v programu Oracle:

1. IZBERITE vsa polja brez pogojev KJE

Za izbiro vseh polj iz tabel: Uporabili bomo znak '*', da označimo, da želimo izvleči vsa polja iz določene tabele.

Poizvedba:

SELECT * from employee;

Ta poizvedba bo prejela vse zapise iz tabele, saj zanjo ni priložen pogoj.

Izhod:

2. IZBERITE vsa polja s pogojem KJE

Zdaj bomo uporabili, kadar je pogoj za isto prej uporabljeno poizvedbo. V tej poizvedbi želimo le podrobnosti določenega zaposlenega. Za dosego tega bomo uporabili stanje kjer. poglejmo poizvedbo

Poizvedba:

SELECT * from employee WHERE EMPLOYEE_ID= 'AD001';

V tej poizvedbi uporabljamo EMPLOYEE_ID, saj je to primarni ključ v tej tabeli, zato je edinstven.

Izhod:

3. Izberite eno polje iz tabele

V tem primeru bomo uporabili stavek SELECT, da bomo izbrali nekaj polj, ne pa vseh polj iz tabele. Poglejmo poizvedbo.

Poizvedba:

SELECT employee_id, name from employee;

Ta poizvedba bo prikazala samo dva stolpca, ker po izbiri SELECT v tej poizvedbi nismo uporabili '*'.

Izhod:

4. IZBERITE polja iz več tabel

V tem primeru bomo uporabili stavek SELECT za pridobivanje podatkov iz več tabel s pomočjo JOIN. Poglejmo poizvedbo.

Poizvedba:

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

Tu v tej poizvedbi uporabljamo stavek SELECT, ki združuje dve tabeli na podlagi pogoja, da se mora ID vozila iz tabele zaposlenih ujemati z ID-jem vozila iz tabele vozila. Poizvedba prikazuje ime zaposlenega iz tabele zaposlenega in ime vozila iz tabele vozila.

Izhod:

5. Prikažite zapise po vrstnem redu SELECT

Z ukazom ORDER lahko prikažemo tudi določene zapise, ki se lahko povečujejo ali spuščajo s pomočjo pojma ORDER BY s poizvedbo. Pregledali bomo tako naraščajoče kot padajoče poizvedbe.

a. Poizvedba za naraščajoče naročilo

SELECT * from employee ORDER BY name ASC;

V tej poizvedbi prikazujemo vse zapise in nabor rezultatov razvrstimo po imenu v naraščajočem vrstnem redu.
Spodnji posnetek zaslona prikazuje izhod, ko se poizvedba izvaja v SQL Developerju.

Izhod:

b. Poizvedba za padajoče naročilo

SELECT * from employee ORDER BY name DESC;

V tej poizvedbi prikazujemo vse zapise iz tabele, rezultat pa je razvrščen po imenu v padajočem vrstnem redu
Spodnji posnetek zaslona prikazuje izhod, ko se poizvedba izvaja v SQL Developerju.

Izhod:

6. IZBERI poizvedbo s klavzulo GROUP BY

Kadar želimo pridobiti zapise na podlagi skupin, uporabljamo člen GROUP BY z stavkom SELECT. Torej v osnovi združuje vrstice z enakimi vrednostmi. Na splošno se uporablja v povezavi s funkcijami agregata. Koristno je za pripravo zbirnih poročil.

Zdaj si bomo ogledali primer, kako lahko vidimo, kako lahko uporabimo GROUP BY s stavkom SELECT v bazi podatkov oracle.

Poizvedba:

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

Torej v zgornjem primeru v osnovi najdemo število zaposlenih, ki uporabljajo določeno znamko avtomobilov. GROUP BY grupira zapise glede na tip avtomobila in nato uporabimo zbirno funkcijo COUNT za izračun števila zaposlenih v vsaki skupini z uporabo stolpca zaposleni_id, saj je to primarni ključ tabele.

Izhod:

7. IZBERI poizvedbo s klavzulo HAVING

Klavzula vlasništva se uporablja z izreznim stavkom, kadar želimo imeti nekaj pogojev, ko ključne besede ni mogoče uporabiti neposredno s skupnimi funkcijami. Zato je bilo v SQL dodano klavzulo. Ogledali si bomo primer, kako lahko uporabimo klavzulo vlasništva z izrezom.

Poizvedba:

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

Kot lahko vidimo, da smo s skupino GROUP BY dodali klavzulo HAVING, zaradi katere smo lahko postavili pogoj, da se prikažejo samo vozila z več kot dvema zaposlenima osebama. Tu postane uporabna določba HAVING.

Izhod:

Če vidimo izhod, dobimo le dva zapisa namesto petih, ki smo jih dobili, ko smo uporabili funkcijo GROUP BY.

Zaključek

V tem članku smo spoznali skladnjo in razlog, zakaj uporabljamo SELECT, pa tudi različne načine, kako lahko v SQL napišemo poizvedbo SELECT in tudi kje in iz katerih razlogov bi jih morali uporabiti.

Priporočeni članki

To je vodnik za izbiro v programu Oracle. Tukaj razpravljamo o uvodu in različnih primerih izbranih poizvedb v SQL s skladnjo. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Pridružuje se Oracle
  2. Oracle skladiščenje podatkov
  3. Agile Oracle
  4. Kaj je Oracle Database
  5. Najboljših 6 poizvedbenih primerov notranje pridruži Oracle
  6. Najboljša razlika med primarnim in tujim ključem