Salut la communauté,
Je compte bien sur vous pour m'aider à sortir de ce mauvais pas...
Autodidacte et plutot novice en requete SQL, j'ai un probleme.
J'ai plusieurs requetes imbriquées de cet ordre :
Si j'ai des résultats dans les deux requetes pas de probleme, la requete rempli son rôle de me donner les elements qui sont dans l'un et pas dans l'autre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SELECT DISTINCT C.NOM FROM C WHERE C.CODE REGEXP 'zzz' AND C.NOM NOT IN ( SELECT DISTINCT C.NOM FROM C WHERE C.CODE REGEXP 'zzz' AND C.TOTO = 'oui' ) GROUP BY C.NOM ORDER BY C.NOM
Là où se pose mon probleme, c'est qu'il peut arriver qu'il n'y ait aucun résultat dans la deuxieme requete.
Du coup, la requete totale ne renvoie aucun résultat.
Je souhaite que si la requete imbriquée ne rnevoie aucun résultat, alors on en affiche quand même un
Un truc du genre
Merci à vous pour votre aide, j'espere avoir été clair.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT DISTINCT C.NOM FROM C WHERE C.CODE REGEXP 'zzz' AND C.NOM NOT IN ( if(SELECT count(C.NOM) FROM C WHERE C.CODE REGEXP 'zzz' AND C.TOTO = 'oui') = 0 then "RIEN" else C.NOM) GROUP BY C.NOM ORDER BY C.NOM
Partager