#1.一个人多次留存也算,比如用户 user_id=1001,date=12 13 14 这种算2次。
#2.计算公式是每人每天的总和,比如user_id=1001,date 12 and user_id=1001,date 13 这算2天(user_id=1002,date=12,这种应该算3天)。
#3.结果就是1/3,留存数量/每人每天总和
with tiaojian as (
select 
device_id,
date,
lead(date,1)over(partition by device_id order by date) as pn
from question_practice_detail
)


select 
count(case when datediff(pn,date)=1 then device_id end)/count(distinct device_id,date)
from tiaojian