Poddotaz
Poddotaz je takový dotaz na databázi, který je umístěn uvnitř jiného „vnějšího“ dotazu a výsledky z něj se používají v nějaké podmínce v tom vnějším dotazu. Poddotazy podporuje většina etablovaných databázových systémů, MSSQL, MySQL (od verze 4.1), Oracle, Sybase a další.
Poddotaz je nejčastěji příkaz SELECT a poskytuje hodnoty do porovnávací podmínky (klauzuli WHERE) pro nadřazený dotaz (jiné části dotazu jen velmi zřídka). Používá se tam, kde není vhodné nebo možné použít agregační funkce nebo (pro dodržení kompatibility) uložené procedury.
Příklad 1:
SELECT * FROM tabulka1 WHERE sloupec1=(SELECT sloupec2 FROM tabulka2 WHERE podmínka);
Příklad 2:
DELETE FROM tabulka1 WHERE sloupec1 IN (SELECT sloupec2 FROM tabulka2 WHERE podmínka);
Příklad 3:
UPDATE tabulka1 SET sloupec1=hodnota1 WHERE EXISTS(SELECT sloupec2 FROM tabulka2 WHERE podmínka);
Externí odkazy
- MySQL Reference Manual – Subqueries (anglicky)
- MySQL (26) - Poddotazy. text.linuxsoft.cz [online]. Linux Software, 2005-06-24 [cit. 2022-01-21]. Dostupné online.
SQL | |
---|---|
příkazy jazyka SQL | |
klíčová slova pro dotazování | TOP • LIMIT • JOIN (FULL LEFT RIGHT INNER CROSS) ON • UNION • ORDER BY • WHERE • GROUP BY • WITH ROLLUP • HAVING |
objekty | TABLE • VIEW • INDEX • CONSTRAINT • TRANSACTION • TRIGGER |
ostatní pojmy | Relační databáze • Systém řízení báze dat • Primární klíč • Cizí klíč • Poddotaz • Uložená procedura • Uživatelem definovaná funkce • Partition • Agregační funkce • Referenční integrita |
Tento článek je příliš stručný nebo postrádá důležité informace. Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty. |