**均为社区同学面试遇到题目**题目:找出连续登录5天的用户图1为模拟数据图2为运行结果Hsql解法如下selectuid,curr,5_dayfrom (selectuid,to_date(`login_date`) curr, --当前日期last_value(to_date(`login_date`))over(partition by uid order by to_date(`login_date`) ascrows BETWEEN CURRENT ROW and 4 FOLLOWING) as 5_day, -- 当前日期后四天的日期值DATEDIFF(last_value(to_date(`login_date`))over(partition by uid order by to_date(`login_date`) ascrows BETWEEN CURRENT ROW and 4 FOLLOWING),to_date(`login_date`)) AS DRFF_DAY -- 当前日期后四天的日期值 - --当前日期 = 最近五次登录的间隔天数,间隔4才是连续登录5天from(select distinct * from tmp) t1 --一个用户一天可能登录多次,只保留一次) t1 where DRFF_DAY == 4更多实战题目及解法思路都在社区!