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

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

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

select if(is_group_buy='Yes','GroupBuy',name) source,count(*)
from order_info o 
left join client c on o.client_id=c.id
where user_id in 
(
    select user_id 
    from order_info a
    where date>'2025-10-15'
    and product_name in ('C++','Java','Python')
    and status='completed'
    group by user_id 
    having count(user_id)>=2
)
and product_name in ('C++','Java','Python')
and status='completed'
and date>'2025-10-15'
group by client_id
order by source

用的是SQL79 牛客的课程订单分析(三) 这个代码改的,注意这里表连接需要使用外连接,因为 client_id中有一个为0,但是client表中是没有的。然后就是使用了一个if语句,当然使用 case when 语句也是可以的。

sql题 文章被收录于专栏

牛客网里面的sql题,把答案和思路写下来

全部评论

相关推荐

2025-12-01 15:50
内蒙古工业大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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