J'essaie d'exécuter une requête qui montre tous les membres d'un client qui n'appartiennent pas à l'un de leurs groupes. Je compare deux tables qui ont un CustomerID
commun et en utilisant leur id de membre pour montrer quels membres ne sont pas dans la deuxième table, CustomerGroupMember
.Comparaison de deux tables dans MySQL basé sur un ID commun
Voici un exemple des deux tables.
Membre client
id | CustomerID | First | Last
---------------------------------
123 | 1234 | Jim | Sample
129 | 1234 | Julie | Clark
137 | 1234 | Jack | Thomas
289 | 1234 | Sue | Smith
Groupe clientele
MemberID | CustomerID | GroupID
---------------------------------
129 | 1234 | 19
289 | 1234 | 20
Ci-dessous est ma requête qui ne semble pas produire aucun résultat. Je voudrais que tous ceux qui ne figurent pas dans cette table de membres du groupe client soient édités. Dans les exemples de tableau ci-dessus je vois une sortie des membres 123 et 137.
SELECT CustomerMember.* FROM CustomerMember
LEFT JOIN
CustomerGroupMember ON CustomerMember.id = CustomerGroupMember.MemberID
WHERE
CustomerMember.CustomerID = '1234' AND CustomerGroupMember.CustomerID = '1234'
AND CustomerGroupMember.MemberID IS NULL
changer essentiellement OÙ ET et modifier un des ANDs à l'endroit où. Pour plus d'aide, voir [Pourquoi devrais-je fournir un MCVE pour ce qui me semble être une requête SQL très simple] (http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an- mcve-for-what-semble-to-me-to-be-very-simple-sql-query) – Strawberry
ouais s'il vous plaît nous montrer quelques exemples de données, la sortie que vous aimeriez voir. ce serait génial si vous ajoutez MCVE (créez des instructions de table avec des exemples de données). vous savez de quoi vous parlez, mais nous ne le savons pas. – EoinS