phpmyadmin 如何计算在一个日期中重复5次以上的所有记录

zaq34kh6  于 2022-11-09  发布在  PHP
关注(0)|答案(1)|浏览(147)

我尝试在按用户分组的单个记录中获取在某个日期重复5次以上的记录的总和
这是我的查询

select user_id, answer_date, count(*) as total_mayor_que_5
from items
WHERE items.proyecto_id = 6
  and `estado` IN (1,4)
  AND `liquidada` = 1
  and items.answer_date BETWEEN '2021-01-01' and '2021-12-31'
  and items.user_id = 832
GROUP BY user_id, answer_date
HAVING COUNT(answer_date) >= 5

结果是
| 用户标识|应答日期|大于5|
| - -|- -|- -|
| 八三二|2021年11月8日|六个|
| 八三二|2021年11月9日|六个|
| 八三三|2021年11月9日|六个|
| 八三三|2021年11月9日|五个|
我不想让它显示所有这些记录;相反,我想要一个总数。2例如,对于ID为832的用户,总数将是12。
这是我的结构表项

我想要这样东西
| 用户标识|总计|
| - -|- -|
| 八三二|十二个|
| 八三三|十一|
谁能帮帮我?谢谢

igetnqfo

igetnqfo1#

您需要多一个级别的分组

select user_id, sum(total_mayor_que_5) total
from (
    select user_id, answer_date, count(*) as total_mayor_que_5
    from items
    WHERE items.proyecto_id = 6
      and `estado` IN (1,4)
      AND `liquidada` = 1
      and items.answer_date BETWEEN '2021-01-01' and '2021-12-31'
      and items.user_id = 832
    GROUP BY user_id, answer_date
    HAVING COUNT(answer_date) >= 5
) t
GROUP BY user_id
order by user_id

相关问题