Bonjour à tous,
je coince sur un soucis SQL.
Je travaille sur un site où les membres peuvent ajouter des photos.
Leurs photos peuvent être placé dans des albums photos (mais pas obligatoirement)
Je souhaiterai afficher le listing de leur album photo avec le nombre de photos qu'ils ont dans chaque album (ainsi que le nombre de photos qu'ils ont mais qui n'appartient pas à un album).
exemple : Marc a 3 photos dans son album "familles", 2 photos dans son album "amis" et 7 photos qui n'appartienent pas à un album.
Le soucis est que je n'arrive pas avec ma query (aussi bien en mettant LEFT join, INNER join ou RIGHT join) d'afficher le nombre de photos qui n'appartient pas à un album photos.
(bon j'espère que j'ai été claire :-/)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 TABLE SQL MEMBRE : id pseudo ALBUM : id membreId (pour savoir à qui appartient l'album) nom PHOTOS : id albumId (pour savoir à quel album appartient la photo, si elle n'appartient à aucun album alors le champ vaut 0) membreId (pour savoir à qui appartient la photo) nomLe résultat que j'ai est (album.id) - (album.nom) - (nbr) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT album.id, album.nom, COUNT(album.id) AS nbr FROM album INNER JOIN photos ON photos.albumId = album.id WHERE album.membreId = 1000 GROUP BY album.id
3 - famille - 7
5 - amis - 8
mais ce membre a 6 photos qui n'appartiennent à aucun album, mais je n'arrive pas à l'intégrer dans ma query.
J'espère à noueau que je suis claire, merci à tous![]()
Partager