请教一个按时段统计人数sql语句

test.zip

每个人每天都记录了上班时间和时段. (可能有直落班,也可能分早晚班,2个时段), 求大神搭建个动态查询每天或指定日期间,时段岗位人数统计的报表,谢谢大哥们~

image.png

SQL 7kitV3l8 发布于 2024-10-24 09:08 (编辑于 2024-10-24 11:00)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
快乐星光Lv5中级互助
发布于2024-10-24 11:36

可以参考下面sql

image.png

image.png

最佳回答
0
华莉星宸Lv7资深互助
发布于2024-10-24 09:15

先把你需要统计的时间段列出来,做个维度表

在根据这个人的上下班时间  来判断是否在这个时间段内就行了

  • 7kitV3l8 7kitV3l8(提问者) 8点上班,12点下班, 8点我知道可以判断在, 9~11这些怎么判断我不会了
    2024-10-24 09:26 
最佳回答
0
用户k6280494Lv6资深互助
发布于2024-10-24 09:28(编辑于 2024-10-24 09:30)

按姓名,岗位,日期 分组统计即可啊

select 姓名,岗位,日期(格式化为年月日),count(1) num from table where sbrq>=ksrq and sbrq<= jsrq group by  姓名,岗位,日期(格式化为年月日)

  • 7kitV3l8 7kitV3l8(提问者) 6:00~22:00 时段,需要固定会好看点吧,知道哪个时段人员少或者为0 的, 你这个统计好像会忽略掉0数据
    2024-10-24 09:38 
最佳回答
0
CD20160914Lv8专家互助
发布于2024-10-24 09:29

image.png

张三1怎么来的,这个时间段,看不懂

  • 7kitV3l8 7kitV3l8(提问者) 抱歉,结果我手工大概写的, 可能不太准确, 就是需要按时段统计人数的意思
    2024-10-24 09:36 
  • CD20160914 CD20160914 回复 7kitV3l8(提问者) 把数据发一个excel文件上来。。。不然太难模拟数据了。
    2024-10-24 10:52 
  • 7kitV3l8 7kitV3l8(提问者) test.zip 大哥 上传了
    2024-10-24 11:00 
  • CD20160914 CD20160914 回复 7kitV3l8(提问者) 这要判断开始与结束时间的时分,然后case when后判断一下
    2024-10-24 11:27 
  • CD20160914 CD20160914 回复 7kitV3l8(提问者) 而且你这个两个字段判断的情况太多了。这样的话不好处理
    2024-10-24 11:29 
最佳回答
0
3333xzxLv4初级互助
发布于2024-10-24 10:27(编辑于 2024-10-24 10:40)

-

  • 6关注人数
  • 239浏览人数
  • 最后回答于:2024-10-24 11:36
    请选择关闭问题的原因
    确定 取消
    返回顶部