sinon, y'a le mot-clé "difference", mais je ne pense pas qu'il marche avec Access.
sinon, pour ce qui est de tes explications, je suis pas trop sûr de suivre.
si y'a une FK entre tbl2.fld2 et tbl1.fld1, alors on part du principe que toute valeur de tbl2.fld2 existe dans tbl1.fld1
Ensuite, si tu cherches les couples (1, 1), (2, 2), etc. avec à chaque fois tbl1.fld1 = tbl2.fld2, alors il suffit de chercher les valeurs de fld3.tbl1 ou fld3.fld2 sont différentes, ou non contenues dans tbl2.fld2
On peut donc écrire la requête comme suis :
Code :
- select tbl3.fld1, tbl3.fld2
- from tbl3
- where tbl3.fld1 <> tbl3.fld2
- or not exists (select null from tbl2 where tbl2.fld2 = tbl3.fld1)
|
A vue de nez, la seconde doit être très légèrement plus rapide
Message édité par Arjuna le 29-12-2005 à 11:25:43