SQL 刷题/【字节跳动】统计晚间各直播间在线人数
上一题下一题中等通过率 25%

【字节跳动】统计晚间各直播间在线人数

JOIN 连接聚合函数GROUP BY日期函数ORDER BYDISTINCT用户行为分析面试真题

题目描述

来源:字节跳动 SQL 面试真题

短视频平台需要统计某天晚上 23:00 至次日 00:00 期间,各直播间出现过的在线用户数。

数据表

user_view_tb 用户观看记录表

字段类型说明
user_idBIGINT用户 ID
room_idBIGINT直播间 ID
in_timeTIME进入直播间时间
out_timeTIME离开直播间时间

room_info_tb 直播间信息表

字段类型说明
room_idBIGINT直播间 ID,主键
room_nameVARCHAR直播间名称
room_typeVARCHAR直播间类型

在线人数口径

  • 统计时段为 23:00:0024:00:00,两个边界时刻都包含在内。
  • 观看区间只要与统计时段存在交集,该用户就算在该直播间在线过。
  • 同一用户在同一直播间有多条观看记录时,只计 1 人。
  • 没有用户在该时段在线的直播间也要输出,人数记为 0。

题目要求

  • 输出直播间 ID、直播间名称和在线人数。
  • 按在线人数降序排列。
  • 在线人数相同时,按直播间 ID 升序排列。

期望输出列

列名说明
room_id直播间 ID
room_name直播间名称
user_count23:00 至 24:00 期间的去重在线人数

数据样例

当前运行环境
user_idBIGINTroom_idBIGINTin_timeTIMEout_timeTIME
1100110:00:0010:30:00
2100110:01:0010:05:00
3100110:05:0010:20:00
1100219:05:0020:05:00
2100219:15:0019:55:00
2100220:15:0020:45:00
3100220:15:0020:45:00
4100322:15:0023:15:00
输入数据显示 8 / 16
SQL 编辑器正在保存草稿...
正在加载 SQL 编辑器...

运行你的 SQL 查询后,结果将显示在这里