连个表就行 | #查询用户刷题日期和下一次刷题日期#

查询用户刷题日期和下一次刷题日期

https://www.nowcoder.com/practice/fed7ebf4254240fdb6a2c963996ee8ff

WITH RANKED AS (
    SELECT
        *,
        ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY date) AS rn
    FROM
        questions_pass_record
),
NEXT AS (
    SELECT
        *,
        ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY date) AS rn
    FROM
        questions_pass_record
)

SELECT
    RANKED.user_id,
    RANKED.date,
    NEXT.date as nextdate
FROM
    RANKED
LEFT JOIN
    NEXT
ON
    RANKED.user_id = NEXT.user_id
AND
    RANKED.rn + 1 = NEXT.rn
ORDER BY
    RANKED.user_id, RANKED.date

全部评论

相关推荐

每晚夜里独自颤抖:把华北改为华南再试一试,应该就没啥问题了。改完可能都不用投,别人主动联系了。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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