题解 | #MYSQL开窗函数#

牛客每个人最近的登录日期(三)

http://www.nowcoder.com/practice/16d41af206cd4066a06a3a0aa585ad3d

SELECT
round(
sum( CASE WHEN date = date_add( d, INTERVAL 1 DAY ) THEN 1 ELSE 0 END )* 1
/ sum( CASE WHEN date = d THEN 1 ELSE 0 END ),
3)
FROM
( SELECT *, min( date ) over ( PARTITION BY user_id ) d FROM login ) AS t

全部评论
如果一个用户一天登录2次以上,分母就不对了,可以用count(distinct case when d= date then user_id end)
1
送花
回复
分享
发布于 2021-08-29 21:51

相关推荐

15 2 评论
分享
牛客网
牛客企业服务