mysql8.0
数据字段有(人员ID,日期,是否请假,是否节假日) 节假日的是否请假均为是
要求统计连续7天以上请假的人,
要求输出请假开始时间,结束时间,天数,人员,
如果连续请假区间包含节假日,那么节假日就是按请假计入连续区间,以及统计天数
如果连续请假区间的开始或结尾为节假日,则节假日不计入连续区间,以及不统计天数
例如1-9号请假5号是节假日那么不管他,当连续请假9天
同样1-9号请假1,9号是节假日那么连续请假为2-8,天数为7天
注意1-9此时为连续请假即31和10都为非请假
此处只对连续请假区间的规则做说明,不要求输出大于7天的
举例
人员 ID 日期 是否请假 是否节假日
001 2022-05-01 是 是
001 2022-05-02 是 否
001 2022-05-03 是 是
001 2022-05-04 是 否
001 2022-05-05 是 是
001 2022-05-06 否 否
001 2022-05-07 否 否
001 2022-05-08 否 否
002 2022-05-02 是 是
002 2022-05-03 是 否
002 2022-05-04 否 否
想要的结果
人员ID 连续请假开始日期 连续请假结束日期 天数
001 2022-05-02 2022-05-04 3
002 2022-05-03 2022-05-03 1
给几条数据 贴图
可以查看这篇文章。
https://blog.csdn.net/ken_not/article/details/81002216