目录
一:新增用户的定义
在某日出现的用户,但是在这之前都没有出现过该用户,此用户即为新用户。
例如2021年6月6日,用户a首次登陆(2021年6月6日之前都没有用户a的登陆记录,则用户a肯定为新用户)
在有些场景下,我们对新用户的定义可以放松一点:
1)除了上述提到了在某日第一次出现该用户即为新用户;
2)若某用户已经超过90天没有登陆该系统,然后再次登陆,我们也把该用户视为新用户。
二:计算逻辑
select a.user_id , game_id
from
(
select user_id,game_id
from currentdate_table -- 该外部表里面的数据只存储了当日所有用户登陆记录。
)a
left outer join
(
select user_id
from alldata_table -- --该外部表里面的数据存储了所有日期所有用户登陆记录。
where event_day <= {YESTDAY}
group by user_id
)b
on a.user_id = b.user_id
where b.user_id is null -- 左半侧
union all
select a.use