最大连续打卡天数

最大连续打卡天数

针对最大连续打卡天数等类似问题的SQL求解,以如下数据为例按步骤求解

步骤如下:

1)利用窗口函数对员工打卡数据进行排序

SELECT uid,to_date(eventdate)eventdate,row_number()over(partition by uid order by to_date(eventdate))rn
FROM   daka

2)计算打卡日期(eventdate)与排序(rn)的差值,若差值相同则是连续打卡。对同一员工、同一差值进行分组汇总,得到每个员工每次连续打卡的天数

SELECT uid,min(eventdate),max(eventdate),count(*)continuity_days
FROM 
(     SELECT uid,to_date(eventdate)eventdate,row_number()ov
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值