Le langage SQL permet de réaliser sur des requêtes les trois opérations de base de la théorie des ensembles :
- L’union – UNION : union des résultats de deux requêtes.
- L’intersection – INTERSECT : intersection des résultats de deux requêtes.
- La différence – EXCEPT en SQL Server / MINUS en oracle : différence des résultats de deux requêtes.
Les deux ordres SELECT doivent produire le même nombre de colonnes. Ils doivent être de même degré.
Les types de données de chaque paire de colonnes doivent être de même type (ou d'un type équivalent).
La clause ORDER BY est toujours la dernière clause d’un ordre SQL.
Les noms des colonnes affichées correspondent aux noms des colonnes du premier SELECT.
Les opérateurs ensemblistes retournent des enregistrements distincts (= pas de doublon) en comparant le résultat des deux requêtes. Lors de l’union, afin de ne pas éliminer les enregistrements en double, il faudra ajouter ALL.