题解 | #牛客的课程订单分析(五)#

牛客的课程订单分析(五)

https://www.nowcoder.com/practice/348afda488554ceb922efd2f3effc427

-- case when 牛!

select
    user_id,
    min(
        case
            when r_n = 1 then date
        end
    ) as first_buy_date,
    min(
        case
            when r_n = 2 then date
        end
    ) as second_buy_date,
    cnt
from
    (
        select
            user_id,
            date,
            ROW_NUMBER() over (
                PARTITION by
                    user_id
                order by
                    date
            ) as r_n,
            count(*) over (
                partition by
                    user_id
            ) as cnt
        from
            order_info
        where
            date > '2025-10-15'
            and product_name in ('C++', 'Java', 'Python')
            and status = 'completed'
    ) a
where
    cnt >= 2
    
group by
    user_id
order by
    user_id

全部评论

相关推荐

马上要带我人生中的第一个实习生了,想问问大家都喜欢什么的mentor?好让我有个努力的目标
拒绝996的劳伦斯很勇敢:看得见目标且护犊子的 具体就是明确告诉组员要干什么,然后当别的组甩dirty work时能护的组自家新人
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务