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

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

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

知识点

  1. 窗口函数建立新表,主要是筛选出订单数量大于等于2的记录
  2. 左连接客户端表,使用ifnull函数,如果有客户端名称就取出现null值就是groupby,按照source进行分组,最后计数客户端出现次数

代码

select ifnull(c.name, 'GroupBuy') as source, 
count(*) as cnt
from (
    select *, count(*) over (partition by user_id) as r
    from order_info 
    where date > '2025-10-15'
    and product_name in ('C++', 'Python', 'Java')
    and status = 'completed'
    )  as t
left join client as c 
on c.id = t.client_id
where t.r >= 2
group by source
order by source
全部评论
请问设定条件购买大于等于2次,为什么放在t外面而不是里面
点赞 回复 分享
发布于 2023-12-15 20:07 北京

相关推荐

牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
10 3 评论
分享
牛客网
牛客企业服务