--按用户ID分区根据日期从小到大排序打上行号 with t1 as ( select user_id, fdate, row_number() over ( partition by user_id order by fdate ) rn from tb_dau ), --用日期减去行号,如果日期连续 结果相等 --按用户ID和日期减去行号分组,可以算出用户所有的连续数 t2 as ( select user_id, date_sub(fdate, interval rn day) lianXu_day, count(1) cn from t1 group by user_id, date_...