J'ai une table (en MySQL) qui stocke les votes. La structure est comme suit:Liste des meilleurs éléments basés sur UserVotes
id INT(11)
post_id INT(11)
vote_value INT(11)
created DATETIME
Maintenant, vote_value
peut être un nombre entier quelconque, par exemple 12, -17 pour un post. Le résultat vote sera 12 + (-17) = -5
pour le poste. Ce que j'essaie de faire, c'est de trier les messages par les votes qui en résultent. Est-ce possible? Si oui, l'aide est très appréciée.
NOTE Je suis en mesure d'obtenir le plus voté articles par
SELECT post_id, COUNT(post_id) AS Count FROM my_table GROUP BY post_id ORDER BY Count DESC LIMIT 0,5
Cela me donne top 5 plus votés messages. c'est-à-dire qu'il sélectionne ces publications avec le plus grand nombre d'occurrences. Mais j'essaie de les trier par votes résultants. J'espère que cela semble clair.
Je suppose que vous vouliez dire 'SELECT post_id, SUM (vote_value) AS Votes FROM my_table GROUPE BY post_id ORDER BY Votes DESC LIMIT 0,5' Et cela a fonctionné parfaitement! Merci! – abhisek