题解 | #从 Products表中检索-子查询和连接表

从 Products 表中检索所有的产品名称以及对应的销售总数

https://www.nowcoder.com/practice/2b289b78de1546f38fd24e17e56f1bec


# 法1 直接使用子查询 
select prod_name,
(select  sum(quantity)
    # from OrderItems ,Products
    from OrderItems
    # 不要忘记这样一个 where 等式连接
    where OrderItems.prod_id =Products.prod_id
    group by prod_id
   #取出来OrderItems表中按prod_id分组后的 每一件商品id所对应的quantity和
) AS quant_sold 
# 因为外层是from的products,是先执行from 再where,再select 
# 你纠结的内层为什么不这样写 是有原因的 已经在外层from了

from Products;

# 思路:作为计算字段使用子查询

# 分组计算销售总数。select sum(quantity) from OrderItems group by prod_id
# 在Products表中搜索。where OrderItems.prod_id=Products.prod_id



# 法2 将2个表连接 将两表进行关联,从关联表中进行查询,最后再分组,依据产品名称进行分组
select prod_name, 
sum(quantity)
from  Products  a, OrderItems b
where a.prod_id=b.prod_id
group by prod_name ;






SQL错题 文章被收录于专栏

每天学习一遍 刷题刷题 越刷越强!

全部评论

相关推荐

05-22 09:23
门头沟学院 Java
点赞 评论 收藏
分享
05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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