2011-05-10 108 views
0

感謝您的閱讀。訂購前十名查詢

我想編寫一個查詢,列出的誰使用了兩個表recevied得票最多的人的名字:

------- 
votes 
------- 
vote_id, giver_user_id, receiver_user_id, datetime 

等。

------- 
users 
------- 

user_id, name, surname 

等等

到目前爲止,我有:

$top_query = "SELECT * FROM vote, user WHERE vote.receiver_user_id = user.user_id GROUP BY receiver_user_id "; 

這類作品,但它沒有列出列表頂部票數最多的用戶。

我該如何訂購?

謝謝。

OP

回答

4
SELECT u.*, COUNT(vote_id) AS votes_count 
FROM users u 
LEFT JOIN 
     votes v 
ON  v.receiver_user_id = u.user_id 
GROUP BY 
     u.user_id 
ORDER BY 
     votes_count DESC 
+0

非常感謝。完善! – 2011-05-10 16:01:03

0

這將組由接收機和爲了通過以降序票:

select receiver_user_id, count(1) vote_count 
     from vote, user 
    where vote.receiver_user_id = user.user_id 
    group by receiver_user_id 
    order by 2 desc