如何按出现次数多少排序查询固定表?
例如,现在有一个表中有下列数据pass
-------------
123456
666666
888888
123456
123456
888888
123456
其中123456出现4次,666666最少,所以查询结果想得到下列数据:
123456(4次)
888888(2次)
666666(1次) select
pass, count (*)
from your-tab
order by 2, 1 294: The column (gykl) must be in the GROUP BY list.
Error in line 1
Near character position 34
Database closed. 原帖由 oicq63236 于 2008-2-27 16:53 发表 http://bbs.chinaunix.net/images/common/back.gif
294: The column (gykl) must be in the GROUP BY list.
Error in line 1
Near character position 34
Database closed.
select
pass, count (*)
from your-tab
order by 2, 1
group by 1;
回复 #4 liaosnet 的帖子
谢谢大家了,不过得换顺序,否则仍报错,得先GROUP,再ORDER,就正常了,再次感谢大家!再多请教一下,如果我只想取前10个数据,再加什么语句?
[ 本帖最后由 oicq63236 于 2008-2-28 09:21 编辑 ] select first 10
....
回复 #6 ivhb 的帖子
谢谢,呵呵,我用LAST怎么取不到后十个呢? 没有这个语法。你可以倒排取前10,就相当于last了
回复 #8 ivhb 的帖子
嗯,谢谢LVHB兄指教了。 :wink: 怎么把COUNT(*)出的数,当条件使用呢?例如我想查大于COUNT(*)出10的记录?
页:
[1]
2