Bonjour à tous,
Je me permets de solliciter vos compétences car je n'arrive pas à trouver de solution à mon problème (qui doit être relativement simple, mais je suis encore débutant en SQL). Voici l'énoncé:
J'ai deux tables. La table FU est la table référentielle, et la table PROD est une table à laquelle des données sont ajoutées. J'aimerais (via SQL) identifier, pour tous les enregistrements contenus dans PROD, les doublons les doublons existants dans la table FU en excluant les enregistrements de la table PROD. Voici un exemple:
Le résultat devrait être: Y1,Y2,Z3.
Voici la requête que j'utilise:
Cette requête semble fonctionner quand je n'ai qu'un seul client par code. Dès que j'ai deux clients pour un même code, la requête m'affiche les doublons alors que j'aimerais avoir 0 enregistrement. Pour être plus précis, si j'ajoute les Y1,Y2,Z3 à la table prod, si la requête est relancée j'aimerais obtenir 0 enregistrement, car tous les codes/client sont déjà dans PROD, donc il n'y a plus de doublons. Cependant dans l'état actuel des choses, cette requête me sort tous les enregistrements comme si c'était un INNER JOIN.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT FU.ID,FU.ISIN ,FU.CLIENT,FU.SDG FROM FU LEFT JOIN PROD ON FU.ISIN=PROD.ISIN WHERE FU.ISIN=PROD.ISIN AND FU.CLIENT<>PROD.CLIENT
Any idea?
merci d'avance pour votre aide,
Partager