Operace UNION vytvoří v Accessu sjednocovací dotaz, který kombinuje výsledky dvou nebo více nezávislých dotazů nebo tabulek.
Syntaxe
[TABLE] dotaz1 UNION [ALL] [TABLE] dotaz2 [UNION [ALL] [TABLE] dotazn [ ... ]]
Operace UNION se skládá z těchto částí:
Část |
Popis |
dotaz1–n |
Výraz SELECT, název uloženého dotazu nebo název uložené tabulky uvozené klíčovým slovem TABLE |
Poznámky
V jediné operaci UNION můžete sloučit výsledky dvou nebo více dotazů, tabulek a příkazů SELECT a jejich libovolné kombinace. Následující příklad sloučí existující tabulku s názvem New Accounts a příkaz SELECT:
TABLE [New Accounts] UNION ALL
SELECT *
FROM Customers
WHERE OrderAmount > 1000;
Při použití operace UNION se standardně nevrací žádné duplicitní záznamy, zahrnutím predikátu ALL ale můžete zajistit vrácení všech záznamů. Zároveň tím dotaz urychlíte.
Všechny dotazy v operaci UNION musí vyžadovat stejný počet polí, tato pole ale nemusí mít stejnou velikost ani datový typ.
Aliasy použijte jenom v prvním příkazu SELECT, protože v dalších se ignorují. V klauzuli ORDER BY odkazujte na pole stejným způsobem, jakým jsou volána v prvním příkazu SELECT.
Poznámky:
-
Vrácená data můžete seskupit pomocí klauzule GROUP BY nebo HAVING v argumentu jednotlivých dotazů.
-
Vrácená data můžete zobrazit v určitém pořadí pomocí klauzule ORDER BY na konci argumentu posledního dotazu.