Documentation PostgreSQL 8.0.25 | ||||
---|---|---|---|---|
Pr�c�dent | Arri�re rapide | Chapitre 7. Requ�tes | Avance rapide | Suivant |
Les r�sultats de deux requ�tes peuvent �tre combin�s en utilisant les op�rations d'ensemble : union, intersection et diff�rence. La syntaxe est
requete1 UNION [ALL] requete2 requete1 INTERSECT [ALL] requete2 requete1 EXCEPT [ALL] requete2
requete1 et requete2 sont les requ�tes pouvant utiliser toutes les fonctionnalit�s discut�es ici. Les op�rations d'ensemble peuvent aussi �tre combin�es et cha�n�es, par exemple
requete1 UNION requete2 UNION requete3
signifie r�ellement
(requete1 UNION requete2) UNION requete3
UNION ajoute effectivement le r�sultat de requete2 au r�sultat de requete1 (bien qu'il n'y ait pas de garantie qu'il s'agit de l'ordre dans lequel les lignes sont r�ellement renvoy�es). De plus, il �limine les lignes dupliqu�es du r�sultat, de la m�me fa�on que DISTINCT, sauf si UNION ALL est utilis�e.
INTERSECT renvoie toutes les lignes qui sont � la fois dans le r�sultat de requete1 et dans le r�sultat de requete2. Les lignes dupliqu�es sont �limin�es sauf si INTERSECT ALL est utilis�.
EXCEPT renvoie toutes les lignes qui sont dans le r�sultat de requete1 mais pas dans le r�sultat de requete2. (Ceci est quelque fois appel� la diff�rence entre deux requ�tes.) De nouveau, les lignes dupliqu�es sont �limin�es sauf si EXCEPT ALL est utilis�.
Pour calculer l'union, l'intersection ou la diff�rence de deux requ�tes, les deux requ�tes doivent �tre <<�compatibles pour une union�>>, ce qui signifie qu'elles doivent renvoyer le m�me nombre de colonnes et que les colonnes correspondantes doivent avoir des types de donn�es compatibles, comme d�crit dans Section 10.5.
Pr�c�dent | Sommaire | Suivant |
Listes de s�lection | Niveau sup�rieur | Tri de lignes |