I. Základní dotazy
1. Vypsání všech sloupců tabulky
SELECT * FROM Zaci
2. Vypsání vyjmenovaných sloupců (příjmení a jméno) z tabulky
SELECT prijmeni, jmeno FROM Zaci
3. Dynamický sloupec (vytvoří nový sloupec z ostatních, např. datum + 18 roků )
SELECT prijmeni, jmeno, datum, (datum + 18*365) FROM Zaci
4. Dynamický sloupec (vytvoří nový sloupec z ostatních, např. datum + 18 roků ) a pojmenuje nový sloupec
SELECT prijmeni, jmeno, datum, (datum + 18*365) AS plnolety FROM Zaci
5. Výběr řádků: WHERE (žáci, kteří se jmenují Petr)
SELECT * FROM Zaci WHERE jmeno = 'Petr'
Další operátory:
= rovno
<> nebo != není rovno
< menší než, <= menší nebo rovno
> větší než, >= větší nebo rovno
Žáci narození před rokem 1990.
SELECT * FROM Zaci WHERE datum < #1/1/1990#
(Pozor takto funguje jen u MS Access)
6. Zobrazení v rozmezí: BETWEEN vybere 3. a 4. ročník
SELECT * FROM Zaci WHERE rocnik BETWEEN 3 AND 4
nebo
SELECT * FROM Zaci WHERE rocnik >= 3 AND rocnik <= 4
7. Použití operátoru LIKE
Vybere žáky Se jménem začínajícím na Pe
SELECT * FROM Zaci WHERE jmeno LIKE "Pe*"
Pozn.: další možnosti
* Odpovídá libovolnému počtu znaků. Může být použit jako první nebo poslední znak ve znakovém řetězci. pa* najde padák, pan, paní, panenka, papír, pas, paseka atd.
? Odpovídá jakémukoli jednotlivému abecednímu znaku. s?k najde sak, sek, sok, srk, suk
[ ] Odpovídá jednomu ze znaků uvedených v závorkách. s[ae]k najde sak a sek, ale nikoli sok, srk a suk
! Odpovídá libovolnému znaku, který není uveden v závorkách. s[!ae]k najde suk a srk, ale ne sak.
- Odpovídá jakémukoli znaku v zadaném rozsahu znaků. Rozsah musí být zadán ve vzestupném pořadí (A až Z, nikoli Z až A). s[a-e]k najde sak, sbk, sck, sdk a sek
# Odpovídá jakékoli jednotlivé číslici. 1#3 najde 103, 113, 123 atd.
8. Tříděný výpis ORDER BY
Setřídí žáky vzestupně podle jména
SELECT * FROM Zaci ORDER BY jmeno
nebo
SELECT * FROM Zaci ORDER BY jmeno ASC
Setřídí žáky sestupně podle jména
SELECT * FROM Zaci ORDER BY jmeno DESC
Setřídí žáky vzestupně podle příjmení a jména
SELECT * FROM Zaci ORDER BY prijmeni, jmeno ASC
9. Výstup do tabulky: INTO (pozor funguje různě v různých db)
Vypíše jména z tabulky zaci do nové tabulky
SELECT jmeno INTO NovaTabulka FROM zaci
10. Zamezení výskytu duplicit DISTINCT
Vypíše jména z tabulky zaci do nové tabulky, každé jméno pouze jednou
SELECT DISTINCT jmeno INTO NovaTabulka FROM zaci