j'ai deux tables produits et commentaires
chaque produit a plusieurs examens liés par une product_id étrangère clé dans la table des commentaires
En outre, chaque examen a un champ appelé note avec une valeur décimale
i souhaite pour obtenir les noms de tous les produits dont la note moyenne est au-dessus d'un certain seuil
quelque chose dans les lignes defiltrage SQL par moyenne
SELECT p.name
FROM products p
INNER JOIN reviews r ON p.id = r.product_id
WHERE avg(r.rating) > 3
MySQL n'est pas me laisser utiliser la fonction avg dans la clause where.
Comment faire quelque chose comme ça?
woops - J'ai raté le « GROUP BY » - fixe –
Voilà pourquoi parfois la clause HAVING est appelée « la clause WHERE des groupes » –
Cela prend beaucoup plus de temps à dire que 'avoir' :) –