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

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

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

select
    user_id,
    first_buy_date,
    second_buy_date,
    count(1)
from
(select
    o.user_id user_id,
    first_value(o.date) over(partition by o.user_id order by o.date) as first_buy_date,
    NTH_value(o.date,2) over(partition by o.user_id order by o.date ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) as second_buy_date
from
    order_info o
where 
    o.status = "completed"
    and o.date > "2025-10-15"
    and (o.product_name = "C++"
    or o.product_name = "Java"
    or o.product_name = "Python")
    and exists(
        select
            oi.user_id
        from
            order_info oi
        where
            oi.status = "completed"
        and oi.date > "2025-10-15"
        and (oi.product_name = "C++"
        or oi.product_name = "Java"
        or oi.product_name = "Python")
        and oi.user_id = o.user_id
        group by oi.user_id
        having count(oi.user_id) >= 2
    )) t
group by user_id, first_buy_date, second_buy_date
order by user_id

全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务