Bonjour,
Je suis en train de dévorer le livre "SQL Server 2014, Développer et administrer pour la performance", et je suis tombé sur une portion que je ne comprends pas au niveau des semi-antijointure (chapitre 4, p.165). Je me permets de citer l'extrait en question :
En quoi cette requête est une antijointure ? Où se fait le filtrage ? Personnellement, j'aurais mis une clauseLa semi-jointure est utilisée lorsqu'on cherche à retourner les informations d'une seule table et que l'on souhaite éliminer des lignes qui joignent une autre table. Cette semi-antijointure ne peut être qu'externe mais elle peut utiliser n'importe quel opérateur d'égalité, d'inégalité ou autre.
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT p1.* FROM T_pilote_pil AS p1 LEFT OUTER JOIN T_pilote_pil AS p2 ON p1.pil_chef = p2.pil_brevet;
pour obtenir l'antijointure. Quelqu'un peut-il m'expliquer ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE p2.pil_brevet IS NULL
Partager