Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S’applique à :
Databricks SQL
Databricks Runtime
Combine les subquery1 précédents et les subquery2 en un seul. Azure Databricks prend en charge trois types d’opérateurs d’ensembles :
EXCEPTINTERSECTUNION
Syntaxe
{ UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] subquery2 } [...]
-
N'importe quelles deux clauses
subqueryspécifiées dans SELECT (sous-sélection). Les deux sous-requêtes doivent avoir le même nombre de colonnes et partager un moindre type commun pour chaque colonne correspondante. UNION [ALL | DISTINCT]
Retourne le résultat de
subquery1plus les lignes desubquery2.Si
ALLest spécifié, les lignes en double sont conservées.Si
DISTINCTest spécifié, le résultat ne contient pas de lignes en double. Il s’agit de la valeur par défaut.INTERSECT [ALL | DISTINCT]
Retourne l’ensemble de lignes qui figurent dans les deux sous-requêtes.
Si
ALLest spécifié, une ligne apparaissant plusieurs fois danssubquery1, ainsi que danssubquery, est retournée plusieurs fois.Si
DISTINCTest spécifié, le résultat ne contient pas de lignes en double. Il s’agit de la valeur par défaut.EXCEPT [ALL | DISTINCT ]
Retourne les lignes figurant dans
subquery1qui ne pas figurent pas danssubquery2.Si
ALLest spécifié, chaque ligne danssubquery2supprime desubquery1exactement une des correspondances éventuellement multiples.Si
DISTINCTest spécifié, les lignes en double sont supprimées desubquery1avant l’application de l’opération, de sorte que toutes les correspondances sont supprimées et que le résultat ne contient pas de lignes en double (correspondantes ou non). Il s’agit de la valeur par défaut.Vous pouvez spécifier
MINUScomme une alternative syntaxique pourEXCEPT.
Lorsque le chaînage d’opérations d’ensemble INTERSECT a une priorité plus élevée que UNION et EXCEPT.
Le type de chaque colonne de résultats est le type le moins courant des colonnes correspondantes dans subquery1 et subquery2.
Si la colonne de résultat est un STRING, son classement est dérivé en appliquant les règles de priorité de classement aux colonnes des sous-requêtes.
Exemples
-- 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