题解 | 短视频直播间晚上11-12点之间各直播间的在线人数
短视频直播间晚上11-12点之间各直播间的在线人数
https://www.nowcoder.com/practice/38f5febc9dac4e9e84ed5891a3e4ca05
with tb as( #2.把不满足if条件的user_id的记录过滤,并对同一直播间多次进入的同一用户用group by去重(人次转为人数) select user_id,room_id from( #1.查找进入和退出直播间时间在23到24点之间的user_id和对应的直播间id SELECT IF(SUBSTR(in_time, 1, 2) IN ('23', '24') OR SUBSTR(out_time, 1, 2) IN ('23', '24'), user_id, NULL) AS user_id ,room_id FROM user_view_tb) t where user_id is not null group by room_id,user_id) #3.关联第二张表,查询直播间名称,和人数并按要求排序 select tb.room_id room_id ,t1.room_name room_name ,count(*) user_count from tb left join room_info_tb t1 on tb.room_id=t1.room_id group by tb.room_id,t1.room_name order by user_count desc,room_name desc ;
我的错点:没有对人次去重为人数