2012-04-12 65 views
5

这是我的第一个问题在stackoverflow,欢迎大家。不同的,计数和排序在一个sql查询

我有一个表:

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

而且我想编写一个SQL查询女巫返回fk_user排序由发生在表的数量。例如:

fk_user 1发生3次,所以它会是第一次。
fk_user 2发生一次,所以它将是最后一次。
fk_user 3发生两次,所以它将是第二次。

结果查询的应该是:

fk_user 
1 
3 
2 

回答

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

@Marco。 Thaks家伙。它运行。点击“这个答案很有用”,但我不得不声名,但它是:) – pmajcher 2012-04-12 11:39:26

+2

@pmajcher:但你应该[接受答案](http://meta.stackexchange.com/questions/5234/how-does-接受一个答案)如果它解决了你的问题:)欢迎来到StackOverflow – Marco 2012-04-12 11:43:29

3

试试这个

SELECT fk_user FROM your_table 
GROUP BY fk_user 
ORDER BY COUNT(*) DESC