题解 | #每篇文章同一时刻最大在看人数#
每篇文章同一时刻最大在看人数
https://www.nowcoder.com/practice/fe24c93008b84e9592b35faa15755e48
select artical_id,max(cnt) as max_uv
from (
select t2.uid,t2.artical_id,count(distinct t1.uid) cnt
from tb_user_log t1,tb_user_log t2
where t1.artical_id = t2.artical_id
and t1.in_time <=t2.out_time
and t1.out_time >= t2.out_time
and t1.artical_id <> 0
group by t2.uid,t2.artical_id
)c
group by artical_id
order by max_uv desc
常规思路,两表连接,取进入时间早于本人,退出时间晚于本人,
为什么不是 u1.in_time <= u2.in_time and u1.out_time > u2.in_time?主要是文章是取同一时刻最大在线人数
