Forum Clubic

Problème de join

Cher tous,

voilà j’ai un petit problème de join, je souhaiterais afficher des articles ainsi que le nombre de commentaires qu’ils ont reçu, jusque là ça ne parait pas trop dur, le seul hic c’est qu’il y a des articles qui n’ont pas reçu de commentaires, donc le join ne peut pas marcher et doit normalement renvoyer null…mais là ma requête ne renvoie que les articles qui ont au moins un commentaire, j’ai donc utilisé un left join qui est censé afficher les nulls :

SELECT n.titre, n.contenu, n.date, count(c.id) as nb_comments FROM galerie_news n LEFT JOIN galerie_comments c ON n.id = c.target_id WHERE c.type = 1 GROUP BY c.id

Mais ça ne marche toujours pas. Une idée ? merci. :slight_smile:
Edité le 24/01/2008 à 18:43

Cher toi :smiley:
tu met un critère “where” sur la table liée, alors la ligne “null” est éliminée, il faut ajouter “ou null”:

SELECT n.titre, n.contenu, n.date, count(c.id) as nb_comments 
FROM galerie_news n LEFT JOIN galerie_comments c ON n.id = c.target_id 
WHERE c.type = 1 or c.type is null
GROUP BY c.id

Edité le 24/01/2008 à 12:54

Ahah merci, j’avais justement trouve ya pas longtemps et ca poutre.

Merci beaucoup. :wink: