Spread the love
  • 3 hónap telt el az utolsó módosítás óta
  • 3perc
  • 689szó
  • 56olvasás

A SELECT-utasítás

A SQL leggyakrabban használt utasítása a SELECT, a választó lekérdezés alapvető utasítása. A visszatérési értéke egy vagy több rekord, attól függően, hogy hány felel meg a lekérdezésnek. Ezt a visszatérési értéket eredményhalmaznak nevezzük.

A SELECT utasítás teljes szerkezete, szintaxisa a következő:

SELECT [DISTINCT] oszlop1[, [DISTINCT] oszlop2, …]
FROM tábla1[, tábla2, …]
[WHERE feltétel ]
[GROUP BY oszlop1[, oszlop2, …]]

[HAVING csoportfeltétel ]
[ORDER BY oszlop1 [DESC] [, oszlop2 [DESC], … ]]
[LIMIT X]
;

A SELECT esetén, ha az összes oszlopot szeretnénk kilistázni, akkor nem szükséges az összes oszlop felsorolása, elég csak csillaggal (*) hivatkoznunk rájuk. A SELECT általában egy hosszabb utasítást eredményez, de írhatunk mindent egy sorba vagy tetszés szerint alkalmazhatunk sortöréseket is, hiszen az SQL nem érzékeny a sortörésekre, ahogyan nem érzékeny a kis- és nagybetűk használatára sem.

A SELECT utasítás részeinek végrehajtási sorrendje szigorúan kötött a következő módon:

  1. Descartes-szorzat képzése (FROM)
  2. Szelekció (WHERE)
  3. Csoportosítás (GROUP BY) – a használata után kizárólag a csoportadatok maradnak meg 
  4. Csoport-szelekció (HAVING)
  5. Projekció (SELECT)
  6. Rendezés (ORDER BY)

A FROM segítségével határozzuk meg, hogy mely táblá(k)ból szeretnénk az adatokat lekérdezni. A SELECT után meghatározott oszlopok értékeit a FROM után definiált táblá(k)ból szedi ki, s adott esetben az oszlopnév nem mindig elegendő, hiszen előfordulhat, hogy két táblában azonos nevű oszlop van, s olyankor a tábla nevét is meg kell adni az oszlopnév mellett (de erre a táblák összekapcsolásánál térünk majd ki).

A WHERE utasítást arra használjuk, hogy a lekérdezést szűrni tudjuk, s a lekérdezés eredményeként csak azok a rekordok kerülnek megjelenítésre, amelyek eleget tesznek a WHERE után meghatározott feltételeknek.Itt meghatározhatunk egyszerű és összetett feltételeket, melyek során használhatunk logikai, aritmetikai és relációs operátorokat is.

A GROUP BY utasítást arra használjuk, hogy összegezzék vagy csoportosítsák az azonos értékű oszlopok rekordjait, s általában különböző aggregáló függvényekkel együtt használják.  A  kulcsszó után csak egyszerűen meg kell adnunk az(oka)t az oszlop(okat), amely(ek)et csoportosítani szeretnénk. Az aggregáló függvények: MIN(), MAX(), COUNT(), AVG(), SUM()

A HAVING utasítás ugyanazt a célt szolgálja, mint a WHERE , de ezt GROUP BY után használjuk.

Az ORDER BY segítségével a lekérdezések eredményét, azaz a kapott eredményhalmazt rendezhetjük, amely lehet növekvő vagy csökkenő. Alapértelmezés szerint növekvő (ASC) rendezés kerül végrehajtásra, ahol a módosítót nem kell kiírni, de lehetséges, amelyet a DESC módosítóval tudunk alakítani csökkenőre. Az ORDER BY  után meg kell adnunk azokat az oszlopokat, amelyek alapján rendezni szeretnénk. Abban az esetben, ha több oszlopot sorolunk fel, a felsorolás sorrendje a rendezés sorrendje is, vagyis az első oszlop az elsődleges rendezést állítja be, a második csak abban az esetben érvényesülhet, ha az elsődleges esetén ugyanaz az érték.

A fentiek mellett ott van egy LIMIT utasítás, amely a lekérdézés eredményéből csak meghatározott számú rekordot enged kilistázni, illetve DISTINCT, amely a teljesen azonos tartalmú kilistázandó rekordok közül csak egyet ír ki, s így az ismétlődések elnyomására használják.

 Források

djp

Hogyan értékeli a posztot?

Kattins a megfelelő csillagra!

Átlagpontszám 0 / 5. Értkelés 0

Még nem értékeltél!

Vélemény, hozzászólás?