Office中国论坛/Access中国论坛

标题: 求助!查询最大值的问题 [打印本页]

作者: asklove    时间: 2009-7-4 15:46
标题: 求助!查询最大值的问题
本帖最后由 asklove 于 2009-7-4 15:51 编辑

例如:
ID  姓名 内容
1 工  我要
2 夺命 我要
3 在  我死
4 地  角对

想要查询“内容”中出现次最多的
上面表中“内容”中次数最多的是:我要(2次)别的都是一次

SQL怎么写才能查询到:

内容  次数
我要  2

补充:我先做一个降序查询,把次数最多的排在最前面,然后另做一个查询第一条记录   也不行,郁闷!求助高手
作者: styhs    时间: 2009-7-4 16:42
假设源表名是表1
SELECT 表1.内容, Count(表1.内容) AS 计数
FROM 表1
GROUP BY 表1.内容
HAVING 表1.内容=(SELECT Max(内容) AS Num FROM 表1)
作者: asklove    时间: 2009-7-6 07:58
谢谢你的回复!不过试着修改几下表中内容,结果有时不正确啊

在你的基础上,我自己做了个长长、臭臭的查询,结果倒是正确,就是期待有人有更简单的方法

SELECT 表1.内容, Count(表1.内容) AS 出现次数
FROM 表1
GROUP BY 表1.内容
HAVING (((Count(表1.内容))=(SELECT Max([内容之计数]) AS 最大记录数
               FROM
                     (SELECT 表1.内容, Count(表1.内容) AS 内容之计数
                FROM 表1
                      GROUP BY 表1.内容))));
作者: zyp    时间: 2009-7-6 08:16
SELECT TOP 1 内容,次数 FROM
(SELECT 表1.内容, Count(表1.内容) AS 次数 FROM 表1  GROUP BY 表1.内容 )
ORDER BY 次数 DESC
作者: asklove    时间: 2009-7-6 09:54
大哥,这个方法好!谢谢




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3