Je suis encore aux prises avec des difficultés avec des requêtes simples JOIN
. De ma dernière question, Simple but nested SELECT query, j'ai appris beaucoup de choses, mais ne pouvais toujours pas accomplir mes requêtes JOIN
. :(Simple requête SQL JOIN
J'ai cette requête de la last question, et il travaille:
SELECT c.value, d.value
FROM a
LEFT JOIN b
ON a.id = b.idy
LEFT JOIN c
ON b.idx = c.id
LEFT JOIN d
ON b.idx = d.id
WHERE a.name = "test"
Maintenant, je veux ajouter une autre condition à la requête de regarder sur les tables e,f,g
et si l'un des a.id, b.idx, c.id, d.id
qui ne fonctionne pas existe sur les tables e,f,g
, puis retourner les résultats. Par exemple, si c.id
existe sur e.id
alors il devrait élimine la ligne de la table c
. Si a.id
existe sur g.id
, il ne devrait pas continuer parce que si vous avez pris hors a.id
de la requête, les autres parties ne doivent rien retourner.
J'ai fait une structure de base de données exemple que vous pouvez voir le code sql ici: Sample.sql
oui, mais je dois tester ça! mes connaissances SQL sucent :( – Mahdi
Hey, ça marche, mais quand j'ai par exemple 'c.id' dans 'f', alors il retourne les deux valeurs 'NULL' pour 'c.value, d.value'. Je veux qu'il retourne seulement 'NULL' pour 'c.value' ou au moins '0' lignes pas une paire de valeurs 'NULL' Est-ce possible? – Mahdi
Cela fonctionne bien l'homme! Merci pour l'aide! :) – Mahdi