以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]统计考勤最大连续出勤天数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=134256)

--  作者:WELOVEFOX
--  发布时间:2019/5/1 14:08:00
--  [求助]统计考勤最大连续出勤天数
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:0考勤连续统计.xls


图片点击可在新窗口打开查看此主题相关图片如下:kq.jpg
图片点击可在新窗口打开查看

附件是从考勤机导出来后,经FOXTABLE加工的数据
“判断是否上班”
是整数格式,1表示有上班,0表示无上班。
一会上图。
问题:统计考勤最大连续出勤天数,找出连续超过8天(或其它特定连续天数) 的最大记录,例如其中2人,A人超过9天,B人超过15天,查询出每个人最大的记录。包括跨月连续天数也算。
思路1. 用统计,每个人考勤最大连续出勤天数。
思路2. 用记录,增加一列用来计算当前人员达到最大数,遇到0,重新计算。再用筛选这个最大记录。

两个思路一时,也没想到怎么用代码编出来,请教下坛里面的各位大神,谢谢。

度娘里面可以参考的

要统计连续出勤6天.........连续出勤...........
追答
sel ect 用户ID

from
(sel ect 用户ID,count(*) cnt
from 表名
where substr(打卡时间,7,2) between \'01\' and \'06\'
group by 用户ID
)tbl
where tbl.cnt = 6
union 
sel ect 用户ID
from
(sel ect 用户ID,count(*) cnt
from 表名
where substr(打卡时间,7,2) between \'02\' and \'07\'
group by 用户ID
)tbl
where tbl.cnt = 6
[此贴子已经被作者于2019/5/1 14:11:51编辑过]

--  作者:有点甜
--  发布时间:2019/5/4 10:55:00
--  

参考

 

https://blog.csdn.net/u012952442/article/details/48294849