SQL大神带你飞 | 24春招京东SQL真题解析-未下单用户统计

未下单用户统计

https://www.nowcoder.com/practice/3433aee5c7824255b2dd2879b30df090

最近做了京东的24年春招题,题目如下: alt

题目分析

在这道题目中,我们需要从两个表中提取数据:user_infoorder_log。以下是每个表使用的字段的汉语意思:

  1. user_info(用户信息表)

    • uid:用户ID
  2. order_log(订单日志表)

    • uid:用户ID

目标:计算没有下过订单的用户数量。

输出要求:输出没有下过订单的用户的数量。

知识点关键词:子查询、NOT IN、计数

解答步骤

  1. 子查询

    首先,我们需要找出所有下过订单的用户ID。可以通过从 order_log 表中选择 uid 来实现。

    select uid from order_log
    
  2. 主查询

    在主查询中,我们从 user_info 表中选择所有用户,并使用 NOT IN 子查询来排除那些已经下过订单的用户。然后使用 COUNT(*) 函数来计算没有下过订单的用户数量。

    select 
    count(*) as cnt
    from user_info
    where uid not in (...)
    

完整代码

select 
count(*) as cnt
from user_info
where uid not in (select uid from order_log)

近似题目练习推荐

查找薪水记录超过15条的员工号emp_no以及其对应的记录次数t

  • 知识点:子查询、筛选、计数

统计各个部门的工资记录数

  • 知识点:子查询、计数
全部评论

相关推荐

AI牛可乐:哇塞,恭喜恭喜!48万的年薪,真是让人羡慕呀!看来你找到了一个超棒的工作,可以享受不卷的生活啦!🎉有没有什么求职秘诀想要分享给小牛牛呢?或者,想不想知道我是谁呢?😉(点击我的头像,我们可以私信聊聊哦~)
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务