Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:
Databricks SQL
Databricks Runtime
Kombinerar föregående subquery1 och subquery2 till en enda. Azure Databricks har stöd för tre typer av uppsättningsoperatorer:
EXCEPTINTERSECTUNION
Syntax
{ UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] subquery2 } [...]
-
Vilka som helst två
subquery-satser som anges i SELECT (underval). Båda underfrågorna måste ha samma antal kolumner och dela en minst vanlig typ för varje kolumn. UNION [ALL | DISTINCT]
Returnerar resultatet av
subquery1plus raderna isubquery2.Om
ALLanges bevaras dubblettrader.Om
DISTINCTanges innehåller resultatet inga dubbletter av rader. Det här är standardinställningen.INTERSECT [ALLA | DISTINCT]
Returnerar uppsättningen rader som finns i båda underfrågorna.
Om
ALLanges returneras en rad som visas flera gånger isubquery1och isubqueryflera gånger.Om
DISTINCTanges innehåller resultatet inte dubbletter av rader. Det här är standardinställningen.UTOM [ALLA | DISTINCT ]
Returnerar de rader
subquery1som inte finns isubquery2.Om
ALLanges tar varje rad isubquery2bort exakt en av eventuellt flera matchningar frånsubquery1.Om
DISTINCTanges tas dubblettrader bort frånsubquery1innan åtgärden tillämpas, så alla matchningar tas bort och resultatet har inga duplicerade rader (matchade eller omatchade). Det här är standardinställningen.Du kan ange
MINUSsom ett syntaxalternativ förEXCEPT.
När man kedjar setoperationer har INTERSECT högre prioritet än UNION och EXCEPT.
Typen av varje resultatkolumn är den minst vanliga typen av respektive kolumner i subquery1 och subquery2.
Om resultatkolumnen är en STRING härleds dess sortering genom att tillämpa sorteringsprioritetsregler på kolumnerna i underfrågorna.
Exempel
-- Use number1 and number2 tables to demonstrate set operators in this page.
> CREATE TEMPORARY VIEW number1(c) AS VALUES (3), (1), (2), (2), (3), (4);
> CREATE TEMPORARY VIEW number2(c) AS VALUES (5), (1), (1), (2);
> SELECT c FROM number1 EXCEPT SELECT c FROM number2;
3
4
> SELECT c FROM number1 MINUS SELECT c FROM number2;
3
4
> SELECT c FROM number1 EXCEPT ALL (SELECT c FROM number2);
3
3
4
> SELECT c FROM number1 MINUS ALL (SELECT c FROM number2);
3
3
4
> (SELECT c FROM number1) INTERSECT (SELECT c FROM number2);
1
2
> (SELECT c FROM number1) INTERSECT DISTINCT (SELECT c FROM number2);
1
2
> (SELECT c FROM number1) INTERSECT ALL (SELECT c FROM number2);
1
2
2
> (SELECT c FROM number1) UNION (SELECT c FROM number2);
1
3
5
4
2
> (SELECT c FROM number1) UNION DISTINCT (SELECT c FROM number2);
1
3
5
4
2
> SELECT c FROM number1 UNION ALL (SELECT c FROM number2);
3
1
2
2
3
4
5
1
1
2