我在 MySql 中有下表
Number
1
2
3
2
3
4
4
4
我想按计数获取数字,但排除了最高和最低计数。应该是这样的结果
Number Count
2 2
3 2
请帮我解决这个问题。
最佳答案
试试这个:
SELECT number, COUNT(*) cnt
FROM mytable
GROUP BY number
HAVING cnt <> (SELECT COUNT(*)
FROM mytable
GROUP BY number
ORDER BY COUNT(*) LIMIT 1)
AND
cnt <> (SELECT COUNT(*)
FROM mytable
GROUP BY number
ORDER BY COUNT(*) DESC LIMIT 1)
HAVING
子句中使用的两个子查询返回最小和最大计数。因此,HAVING
子句的两个谓词过滤出计数最高和最低的组。
关于排除最高和最低计数的MySQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36572081/