2011-05-21 46 views
0

如果有订购按行的出现数量的后代为了结果的可能性,我在问,一个例子来阐明: 这里是我的表:如何通过出现数字降序获取行?

foo 
foo1 
foo 
foo 
foo1 
foo2 

这里是一个查询后,我的结果(即我不能猜测)调用:

foo 
foo 
foo 
foo1 
foo1 
foo2 

怎么把富apears 3次,然后foo1该apears 2次,然后foo2的apears只是1次。

那么,查询的使用方式如何?

我会感谢任何支持! 我的问候!

回答

0
select t1.col from 
table as t1 inner join (
select col,count(col) as num 
from table 
group by col) as t2 
on t1.col = t2.col 
order by t2.num desc 
+0

@nick rulez谢谢,但你能描述一下这个查询吗? – 2011-05-21 10:06:29

+0

查询的这一部分“select col,count(col)as num from group by col”为您提供了每个单个值及其出现次数(尝试运行以查看结果)。既然你想要所有的单个记录,你必须在你的表格和我上面写到的查询之间建立一个连接。最后,按降序对结果进行排序,找出您在该查询中找到的出现次数。 – 2011-05-21 10:11:16

+0

@nick rulez,你的第一个查询做到了目的(没有'加入'),非常适合你!谢谢你looooot! – 2011-05-21 10:17:52

相关问题