with t1 as(select distinct device_id,date from question_practice_detail), t2 as(select *,lead(date)over(partition by device_id order by date)s_date from t1 ) select (count(device_id)/(select count(distinct device_id,date) from question_practice_detail)) from t2 where date_add(date,interval 1 day) ...