SQL SELECT parancsok Kottyán László
A bemutató mintatáblái
Mindegyik oszlop kiválasztása select * from Reszleg
Megadott oszlopok kiválasztása 1 select rsz, hely from Reszleg
Aritmetikai operátor használata select nev, alapber, alapber from Alkalmazottak */+-*/+-
Zárójel használata select nev, alapber, 2*(alapber+10000) from Alkalmazottak
Alias használata select nev AS Név, alapber Alapbér from Alkalmazottak
Összefűzés select nev + ' egy '+ beosztas As Alkalmazottak from Alkalmazottak
Dupla sorok mellőzése select rsz from Alkalmazottak select distinct rsz from Alkalmazottak
WHERE select nev, beosztas, rsz from Alkalmazottak where beosztas='Titkárnő'
Összehasonlító operátorok select nev, beosztas, alapber from Alkalmazottak where alapber <= = <>, != > < >= <=
BETWEEN select nev, beosztas, alapber from Alkalmazottak where alapber between and
IN select nev, beosztas, alapber from Alkalmazottak where alapber in(48000,95000,102000)
Like % select nev from Alkalmazottak where nev like 'S%'
Like _ select nev from Alkalmazottak where nev like '_e%'
AND select nev, alapber, beosztas from Alkalmazottak where alapber>70000 and beosztas = 'Csoportvezető'
OR select nev, alapber, beosztas from Alkalmazottak where alapber>70000 or beosztas = 'Csoportvezető'
NOT select nev, beosztas from Alkalmazottak where beosztas not in ('Csoportvezető', 'Szakmunkás', 'Főmérnök')
Kiértékelési szabályok select nev, beosztas, alapber from Alkalmazottak where beosztas='Titkár' or beosztas='Főmérnök' and alapber > select nev, beosztas, alapber from Alkalmazottak where (beosztas='Titkár' or beosztas='Főmérnök') and alapber >
ORDER BY select nev, beosztas, alapber, belepes from Alkalmazottak order by belepes
DESC select nev, beosztas, alapber, belepes from Alkalmazottak order by belepes desc
Rendezés több oszlop szerint select nev, beosztas, alapber, belepes from Alkalmazottak order by belepes, nev asc
JOIN select Alkalmazottak.nev, Alkalmazottak.rsz, Reszleg.rsz, Reszleg.hely from Alkalmazottak, Reszleg where Alkalmazottak.rsz = Reszleg.rsz
Alias select a.nev, a.rsz, r.rsz, r.hely from Alkalmazottak a, Reszleg r where a.rsz = r.rsz
NON-EQUIJOIN select a.nev, a.alapber, f.fokozat from Alkalmazottak a, Fokozat f where a.alapber between f.also and f.felso
Külső csatolás select a.nev, a.rsz, r.rsz, r.reszleg from Alkalmazottak a, Reszleg r where a.rsz*=r.rsz order by a.rsz *= bal-külső összekapcsolás a bal oldalon álló táblából visszaadja az össze nem kapcsolt sorokat is =* jobb-külső összekapcsolás a jobb oldalon álló táblából visszaadja az össze nem kapcsolt sorokat is self join
AVG, MAX, MIN, SUM select AVG(alapber) Átlag, Max(alapber) Maximum, min(alapber)Minimum, sum(alapber)Összesen from Alkalmazottak where beosztas='Szakmunkás'
COUNT select count(*) 'Alkalmazottak száma a 4. részlegen' from Alkalmazottak where rsz=4 select count(nev) 'Alkalmazottak száma a 4. részlegen' from Alkalmazottak where rsz=4
GROUP BY select rsz, avg(alapber)'A részlegek átlagos bére' from Alkalmazottak group by rsz csak olyan oszlopnév állhat a select után amelyre csoportfüggvény van alakalmazva vagy a group by-ban szerepel
Csoportosítás több oszlop szerint select rsz, beosztas, sum(alapber) 'Összesen' from Alkalmazottak group by rsz, beosztas
HAVING select rsz, max(alapber) 'Maximum' from Alkalmazottak group by rsz having max(alapber)>95000
GROUP BY-HAVING-ORDER BY select rsz, max(alapber) 'Maximum' from Alkalmazottak group by rsz having max(alapber)>95000 order by max(alapber)