UNION
operátor vyžaduje, aby byly z výsledné sady odstraněny duplicitní n-tice (řádky), než budou vráceny jakékoli řádky. To je ve skutečnosti operace SORT UNIQUE. To je relativně levné pro malé sady výsledků, ale pro velké sady to může být náročné na zdroje na serveru (tj. trvat dlouho.)
Teoreticky jde o kombinaci dotazů s UNION ALL
operátor spíše než UNION
operátor by byl nejrychlejší, protože by eliminoval (n -1) zpáteční cesty do databáze vs samostatné spouštění dotazů. Ale pro velké hodnoty n , narazíte na praktická omezení velikosti textu SQL (maximální velikost paketu).
Máte na výběr mezi UNION
operátor a samostatné dotazy, pro velkou sadu výsledků budou samostatné dotazy méně náročné na zdroje na straně serveru.
Stručně řečeno, je to skutečně kompromis mezi těžkou zátěží pro každý dotaz a těžkou zátěží operace SORT UNIQUE.