【问题标题】: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

我应该如何更新查询

【问题讨论】:

    标签: mysql sql mysql-workbench sequelpro


    【解决方案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) 以获取每个计数的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-08
      • 2021-10-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多