2010-10-29 3 views

Répondre

6
SELECT id, post_text, votes_up, votes_down, date, sum(votes_up + votes_down) as 'Votes' 
FROM posts 
ORDER BY sum(votes_up + votes_down) 
+0

merci pour la bonne réponse;), puis-je aussi vous demander d'accéder aux valeurs votes_up ou votes_down, deos qui viennent automatiquement cette requête – getaway

+0

Ajouter les autres colonnes dont vous avez besoin à l'instruction select, je mettrai à jour ma réponse –

3

traditionnelle SQL vous permet d'utiliser la colonne alias dans le ORDER BY:

SELECT p.votes_up + p.votes_down AS total_votes 
    FROM POSTS p 
ORDER BY total_votes 
+0

tu veux dire aussi p.votes_down? :)) – getaway

+0

@getaway: Désolé? –

1

Vous pouvez utiliser blablabla ORDER BY sum(votes_up + votes_down), mais faites attention et ne l'utilisez pas sur des bases de données de production surchargées, car sum() sera calculé "à la volée" et il sera très lent pour les grandes tables!

+0

im juste le faire sur les messages faits dans les 3 dernières heures, de sorte qu'il ne sera pas effectuer sur toutes les lignes dans le post tbale, serait-ce encore bien – getaway

+0

est leur alternative à cela, la chose la plus importante est que je commande le lignes sur le total des votes – getaway