1141. 查询近30天活跃用户数 - 力扣(LeetCode)


可以使用 DISTINCT 统计每天的活跃用户数。SQL 解决方案如下:
WITH Last30Days AS (
SELECT DISTINCT activity_date, user_id
FROM Activity
WHERE activity_date BETWEEN DATE_SUB('2019-07-27', INTERVAL 29 DAY) AND '2019-07-27'
)
SELECT activity_date, COUNT(user_id) AS active_users
FROM Last30Days
GROUP BY activity_date;
此查询的逻辑如下:
-
通过
WITH子句(CTE)筛选出最近 30 天内的activity_date和user_id组合,以确保每个用户在某一天仅被计算一次。 -
在最终的
SELECT语句中,对activity_date进行GROUP BY,并计算每天的活跃用户数。
你可以根据需要调整 DATE_SUB 的天数或日期范围!🚀
2509

被折叠的 条评论
为什么被折叠?



