题解 | 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题,把答案和思路写下来