以表 table_a 的 col_a列, 为例,代码如下:
select col_a from
(select col_a,count(*) as 'cfsl' from table_a group by col_a ) a
where cfsl in
(select max(cfsl) from (select col_a,count(*) as 'cfsl' from group by col_a ) b);
1、将相同的名称分组,统计重复次数为 'cfsl'。
2、用 MAX 函数 取 cfsl 最大对应的名称
以上方法各数据库可通用,如果是支持top函数的数据库 ,第二部可以使用 top,会简单一些。
假设tab列为id
SELECT id, max(cnt)
FROM (SELECT id, count(*) AS cnt FROM tab GROUP BY id) t
那么这个id就是最多的那个
如果只要id
SELECT id
FROM (SELECT id, max(cnt)
FROM (SELECT id, count(*) AS cnt FROM tab GROUP BY id) t) t1
查询表中登陆次数最多的用户
select top 1 userName,count(*) from UserLog
group by userName
order by count(*) desc