游戏玩法分析
题目
表:活动表:
列名 | 类型 |
---|---|
player_id | int |
device_id | int |
event_date | date |
games_played | int |
player_id,event_id是这张表的主键。
这个表格显示了一些游戏中玩家的活动。
每一行都是一个玩家的记录,该玩家在某一天使用某些设备注销之前登录并玩了一些游戏(可能是0)。
写一个查询每位玩家第一次登陆日期的sql。
查询结果的格式如下所示:
Activity table:
player_id | device_id | event_date | games_played |
---|---|---|---|
1 | 2 | 2016-03-01 | 5 |
1 | 2 | 2016-5-02 | 6 |
2 | 3 | 2017-06-25 | 1 |
3 | 1 | 2016-03-02 | 0 |
3 | 4 | 2018-07-03 | 5 |
结果表:
player_id | first_login |
---|---|
1 | 2016-03-01 |
2 | 2017-06-25 |
3 | 2016-03-02 |
思路
只针对玩家,那么必然会针对player_id做group by操作,然后根据min函数排序即可
代码
select player_id ,min(event_date) as first_login
from Activity group by player_id;
网友评论