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

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

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

窗口函数分别给出成功购买的次序r 以及总次数cnt。
题目需要的是user_id 第一次和第二次购买的日期 及cnt
故r<=2中 min(date)为第一次 max(date)为第二次

SELECT
a.user_id,
min(a.date) first_buy_date,
max(a.date) second_buy_date,
a.cnt
FROM
(
SELECT
*,
ROW_NUMBER() over(partition by user_id order by date) r,
count(product_name) over(partition by user_id) cnt
from order_info
where status='completed'
and date>'2025-10-15'
and product_name in('C++','Java','Python')
)a
where a.r<=2 and a.cnt>=2
group by 1
order by 1

全部评论

相关推荐

11-24 11:23
门头沟学院 C++
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务