Leetcode-Mysql题目及知识点总结(512、游戏玩法分析II)

计算机小白QAQ,因为想找数分岗暑期实习所以充了会员想集中刷一下leetcode的mysql部分。写这个系列博文和大家们交流一下,后面也会持续更新面经准备的一些问题,欢迎同好们一起交流,求大佬轻喷QAQ。因为自己初学也走了很多弯路,所以会尽量写得详细一点,如果可以帮助到后来的朋友们,请各位留言鼓励一下哈哈哈哈。

512、游戏玩法分析II

思路:先找的每个player首次登陆的时间作为子查询,以(player_id,event_date)作为过滤条件返回其在子查询范围内的player_id和device_id。

这个思路下没有新的知识点,只是有一个需要注意的点。为什么要以这两个列名组合为过滤条件而不是event_date自己呢?是因为有可能这一组的最小值event_date可能在别的组也出现过,这样就会导致输出的错误。同时这里没有将子查询作为新的表使用所以不需要命名,如果是要左连接之类的是需要命名的。

代码:

select player_id,device_id

from Activity

where (player_id,event_date) in (select player_id,min(event_date)

from Activity

group by player_id)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值