SQL连续登录两天及以上的日期区间
登录表:user_login_detail
字段:user_id(用户ID) login_ts(登录时间)
需求:连续登录两天及以上的日期区间,开始日期,结束日期,需要给出三个字段,分别是user_id、start_date、end_data。
select user_id,min(datediff) start_date, max(datediff) end_date from ( select user_id,login_date,dr,date_sub(login_date,dr) datediff from ( select user_id ,date(login_ts) login_date, row_number() over(partition by user_id order by login_ts ) dr from user_login_detail ) a ) b group by user_id,datediff having count(*) >= 2
浙公网安备 33010602011771号