Je n'arrive pas à faire ma requete avec jointure voulue
Bonjour,
je réalise une requête avec jointure et je n'arrive pas a obtenir le résultat voulu, pourtant je ne pense pas être loin de la solution.
J'ai une table catalogue avec les champs suivant:
id | id_site | id_produit | number_produit
et une table catalogue2 avec les champs suivant:
id | id_site | id_produit | number_produit
Il y a d'autres champs dans chaque table qui ne nous intéressent pas pour le problème posé. Chaque table dispose donc des même champs.
pour qu'un article soit considéré comme identique, trois champs doivent être identique, à savoir id_site, id_produit et number_produit.
Quand je réalise la requête suivante:
Code:
1 2
|
"SELECT catalogue2.id from catalogue2, catalogue WHERE catalogue.id_site = catalogue2.id_site AND catalogue.id_produit = catalogue2.id_produit AND catalogue.number_produit = catalogue2.number_produit" |
J'obtiens bien les id des articles présent dans catalogue1 et catalogue2.
Ce que je veux c'est le contraire, c'est à dire les id des articles du catalogue2 qui n'existe pas dans le catalogue1.
J'ai essayé ceci:
Code:
1 2
|
"SELECT catalogue2.id from catalogue2, catalogue WHERE !(catalogue.id_site = catalogue2.id_site AND catalogue.id_produit = catalogue2.id_produit AND catalogue.number_produit = catalogue2.number_produit)" |
Cette requête ne fonctionne pas et me renvois des millions de résultat. Ce que je comprends très bien puisqu'il y a des millions de possibilité.
Voyez-vous comment je pourrais faire ma requête ?
En espérant avoir réussi à me faire comprendre.
Merci d'avavnce.