Bonjour à tous,
Je me tourne vers vous pour un problème que je rencontre actuellement sur une simple requête Sql. Je vous exposes mon problème :
Je possède 2 tables ("Produits" et "Notes" ). Les utilisateurs peuvent apprécier les produits en leur donnant une note. Ma requête a pour but de retourner chaque produits avec ne nombre de notes attribuées ainsi que la moyenne des notes (trié sur les moyennes décroissantes).
Schéma grossier de mes 2 tables :
Produit
----------
id_prod
nom_prod
Notes
----------
id_note
id_prod
note
Ma requête actuelle resseble à celà :
SELECT Produits.*, AVG(Notes.note) AS noteMoyenne, COUNT(Notes.id_note) AS noteTotal FROM Produits, Notes WHERE Produits.id_prod = Notes.id_prod ORDER BY noteMoyenne DESC, noteTotal DESC
Le problème de ma requête est qu'elle retourne uniquement les produits qui ont déjà été noté. Les autres ne s'affichent pas. Hors, je souhaiterais que les produits qui n'ont pas encore été noté puissent également s'afficher avec bien sûr "0" comme moyenne et total des notes.
Quelqu'un pourrait-il m'éclairer sur le sujet ?
Merci d'avance.