1141. 查询近30天活跃用户数
表:Activity
±————–±——–+
| Column Name | Type |
±————–±——–+
| user_id | int |
| session_id | int |
| activity_date | date |
| activity_type | enum |
±————–±——–+
该表没有包含重复数据。
activity_type 列是 ENUM(category) 类型, 从 (‘open_session’, ‘end_session’, ‘scroll_down’, ‘send_message’) 取值。
该表记录社交媒体网站的用户活动。
注意,每个会话只属于一个用户。
编写解决方案,统计截至 2019-07-27(包含2019-07-27),近 30 天的每日活跃用户数(当天只要有一条活动记录,即为活跃用户)。
以 任意顺序 返回结果表。
结果示例如下。
示例 1:
输入:
Activity table:
±——–±———–±————–±————–+
| user_id | session_id | activity_date | activity_type |
±——–±———–±————–±————–+
| 1 | 1 | 2019-07-20 | open_session |
| 1 | 1 | 2019-07-20 | scroll_down |
| 1 | 1 | 2019-07-20 | end_session |
| 2 | 4 | 2019-07-20 | open_session |
| 2 | 4 | 2019-07-21 | send_message |
| 2 | 4 | 2019-07-21 | end_session |
| 3 | 2 | 2019-07-21 | open_session |
| 3 | 2 | 2019-07-21 | send_message |
| 3 | 2 | 2019-07-21 | end_session |
| 4 | 3 | 2019-06-25 | open_session |
| 4 | 3 | 2019-06-25 | end_session |
±——–±———–±————–±————–+
输出:
±———–±————-+
| day | active_users |
±———–±————-+
| 2019-07-20 | 2 |
| 2019-07-21 | 2 |
±———–±————-+
解释:注意非活跃用户的记录不需要展示。
题解
统计截至 2019-07-27(包含2019-07-27),近 30 天的每日活跃用户数(当天只要有一条活动记录,即为活跃用户)。
- 最近30天,截止2019-07-27, between and 、date_add
- 用户数,分区+count distinct即可
方法一 where+date_add
select
activity_date as day,
count(distinct user_id) as active_users
from Activity where activity_date between date_add('2019-07-27',interval -29 DAY) and '2019-07-27' group by activity_date
比较简单就这样吧
文章来源于互联网:SQL-leetcode—1141. 查询近30天活跃用户数
引言 在科技迅猛发展的今天,人工智能(AI)已经成为推动社会进步的重要力量。特别是在AI生成内容(AIGC)领域,AI技术的应用正在不断拓展和深化。随着AIGC技术的日益成熟,它在销售领域的应用也逐渐成为企业提升竞争力的重要手段。本文将深入探讨AIGC在销售领…
5bei.cn大模型教程网










