我一直在浏览论坛,我看到大部分答案都包含在内 LIMIT,我只是想知道如何在没有LIMIT的情况下返回最常见的价值。示例:您不知道有多少变量具有最高值,并且您不知道最高值。但是您想要显示具有最高值的所有变量
到目前为止,我的代码是
SELECT b.column1, b.column2, count(a.column1)
FROM alphabet a
LEFT JOIN book b ON a.column1= b.column1
GROUP BY a.column1
ORDER BY count(a.column1) desc;
有没有办法在不使用限制的情况下返回最常用的值?
答案 0 :(得分:0)
解决此类问题的一般模式是将值(聚合与否)与子查询中选择的最大值进行比较。例如,以下查询应该适合您:
SELECT b.column1, count(a.column1)
FROM alphabet a
LEFT JOIN book b ON a.column1= b.column1
GROUP BY b.column1
having count(a.column1) = (select max(cnt) from (
select count(a2.column1) as cnt
from alphabet a2
group by a2.column1))