MySQL - Vote, moyenne, prise en compte minumum de vote.

Bon le but est le suivant :
Créer un système de vote, ou les votes sont une moyenne du totale de vote/note (logique) mais ou l'on affiche que les images qui on eu un minimum de 10 votes...

 

J'ai une table vote pour des images:
avec [id][idimage][note] Note étant un chiffre en 1 et 10...


requete=mysql_db_query($sql_bdd,"select count(*) as nbrec, idimage, AVG(note) as lanote FROM table_images group by idimage HAVING nbrec>10 order by lanote DESC limit 10",$db_link) or die(mysql_error());

Bon j'explique:
avec count je retourne le nombre d enregistrer
ce nombre j en fai l alias nbrec
je select idimage
AVG(note) et la fonction pour les moyennes, j en fai l alias Lanote

on groupe le tout par idimage (de sorte a avoir un totale par id et non par nombre de records dans la table)

Having est comme un Where (c est la secret) qui fonctionne après un groupe by, donc je prend ceux dont nbrec(souvenez-vous, alias après le count) est plus grand que 10, et on ordonne...

Pfffiou... tout ca pour ca...


Publié le 12 FĂ©vrier 2006 par luca | Ecouter l'article

Publié dans : Programmation

Accueil Précédent Suivant