) c;
注意:有时同一个用户的最大连续日期可能存在多个,这里以第一个为准;如果需要获取全部的最大日期可以使用rank或dense_rank窗口函数,可以保证天数一致时排名一致。...@prev_date,@r,@r:=@r+1) group_id, -- 日期变化大于1天(不连续)改变r值
@prev_date:=`date` -- 记录前一条记录的日期
FROM(
SELECT...,INTERVAL 1 DAY)=`date`,@r,@r:=@r+1) group_id, -- 日期变化大于1天(不连续)改变r值
@prev_date:=`date` -- 记录前一条记录的日期...:=role_id -- 记录前一条记录的用户ID
FROM(
SELECT
role_id,
MIN(DATE) begin_date,
MAX(DATE) end_date,...1 DAY)=`date`,@r,@r:=@r+1) group_id, -- 日期变化大于1天(不连续)改变r值
@prev_date:=`date` -- 记录前一条记录的日期
FROM