Je tente d'obtenir les informations d'une table (jeux) et de compter les entrées dans une autre table (tickets) correspondant à chaque entrée dans la première. Je veux que chaque entrée de la première table soit retournée même s'il n'y a pas d'entrées dans la seconde. Ma question est la suivante:SQL GROUP BY/COUNT même si aucun résultat
SELECT g.*, count(*)
FROM games g, tickets t
WHERE (t.game_number = g.game_number
OR NOT EXISTS (SELECT * FROM tickets t2 WHERE t2.game_number=g.game_number))
GROUP BY t.game_number;
Qu'est-ce que je fais mal?
Merci beaucoup - Je suis un peu gêné que je ne me suis pas rendu compte que cela aurait dû être une participation à gauche. – Wickethewok
Ne pas être - sql est de marbre. –
La sous-requête peut sembler plus claire pour un penseur orienté non défini, mais il peut exister des différences de performance importantes entre les deux méthodes. Je ne suis pas un expert MySQL, donc je ne sais pas avec certitude, mais je ferais au moins l'expérience avec les deux avant de décider. –