2012-04-12 31 views
5

Đây là câu hỏi đầu tiên của tôi về stackoverflow, chào mừng tất cả mọi người.Phân biệt, đếm và sắp xếp trong một truy vấn sql

Tôi có một bảng:

id fk_user 
1  1 
2  1 
3  3 
4  2 
5  3 

Và tôi muốn chuẩn bị một phù thủy truy vấn SQL trả về fk_user được sắp xếp theo số lần xuất hiện trong bảng đó. Ví dụ:

fk_user 1 xảy ra 3 lần, vì vậy sẽ là lần đầu tiên.
fk_user 2 xảy ra một lần, vì vậy nó sẽ là cuối cùng.
fk_user 3 xảy ra hai lần, vì vậy đây sẽ là lần thứ hai.

Kết quả truy vấn mà nên là:

fk_user 
1 
3 
2 

Trả lời

9
select fk_user from 
xxx 
group by fk_user 
order by count(*) desc 
+0

@Marco. Thaks guys. Nó chạy. Tôi có ít danh tiếng để bấm vào "câu trả lời này là hữu ích", nhưng nó là :) – pmajcher

+2

@pmajcher: nhưng bạn nên [chấp nhận một câu trả lời] (http://meta.stackexchange.com/questions/5234/how-does- chấp nhận-một-trả lời-công việc) nếu nó giải quyết vấn đề của bạn :) Chào mừng bạn đến StackOverflow – Marco

3

Hãy thử điều này

SELECT fk_user FROM your_table 
GROUP BY fk_user 
ORDER BY COUNT(*) DESC 
Các vấn đề liên quan