2013-04-07 83 views
0

我已經基本下表:SQL查詢的總和排序表

ID(int)的用戶名(字符串)消息話題(字符串)評級(INT)

所以條目是這樣的:

1 thomas "hello..." 3 
2 Tina  "blabla"  2 
3 thomas "blub"  1 
4 julia "basgs"  3 

...

我想找回前10名的用戶名與他們的所有消息的最評級。 所以我想對錶進行排序,它看起來

1. thomas 4 
2. julia 3 
3. Tina 2 

回答

2

我不會告我明白你的問題的權利,但嘗試之一:

SELECT 
    username, 
    SUM(rating) 
FROM 
    YourTable 
GROUP BY 
    username 
ORDER BY 
    SUM(rating) desc 
LIMIT 
    10 
+0

Thx,正是我正在嘗試做的! – tobias 2013-04-07 21:36:43

0
select username 
,  count(*) 
from YourTable 
group by 
     username 
order by 
     count(*) desc 
limit 10 
+0

你爲什麼要服用,如果計數他想要'總和'? – 2013-04-07 20:24:15

+0

@Evan:問題是「最高評分」。我同意示例數據看起來像是「評分總和」。 – Andomar 2013-04-07 20:25:55

+0

我剛剛脫離標題 – 2013-04-07 20:26:52