题解 | #牛客每个人最近的登录日期(四)#

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

http://www.nowcoder.com/practice/e524dc7450234395aa21c75303a42b0a

SELECT c.ndate,
CASE
WHEN d.new IS NULL THEN 0
ELSE d.new
END
FROM (
SELECT DISTINCT(date) AS ndate
FROM login
) AS c LEFT JOIN (
/1.如果当前用户id不在当前日期之前的登录记录中出现过,那就判定该用户id是当前日期的新用户,
然后按照日期分组,求出各日期中新登录用户的数量
*/
SELECT a.date,COUNT(
) AS new
FROM login AS a
WHERE a.user_id NOT IN (
SELECT b.user_id
FROM login AS b
WHERE a.date>b.date
)
GROUP BY a.date
) AS d
ON c.ndate=d.date
ORDER BY c.ndate

全部评论

相关推荐

11-03 13:18
门头沟学院 Java
包行:平时怎么刷算法题的哇,字节的手撕听说都很难
字节跳动工作体验
点赞 评论 收藏
分享
牛马人的牛马人生:一开始看成了网吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务