需要帮助查找数字在查询结果中重复的次数
Posted
技术标签:
【中文标题】需要帮助查找数字在查询结果中重复的次数【英文标题】:need help to find number of times a number is repeated in query result 【发布时间】:2020-06-10 11:29:17 【问题描述】:我有一张像下面这样的表
item_id link_id
1 10
1 20
2 100
2 40
2 10
3 10
3 30
4 10
4 20
4 30
我运行查询以查找每个 item_id 的出现
select `item_id`, count(`item_id`)
from `table`
group by `order_id`
这给了我结果
item_id count('item_id')
1 2
2 3
3 2
4 3
但我必须找出我在结果中获得每个值的时间,像这样
count('item_id') Occurence
2 2
3 2
我应该如何更新查询
【问题讨论】:
【参考方案1】:使用两个级别的聚合:
select cnt, count(*), min(item_id), max(item_id)
from (select `item_id`, count(`item_id`) as cnt
from `table`
group by `order_id`
) i
group by cnt;
我还经常在此类查询中添加min(item_id), max(item_id)
以获取每个计数的示例。
【讨论】:
以上是关于需要帮助查找数字在查询结果中重复的次数的主要内容,如果未能解决你的问题,请参考以下文章