sql-leetcode-1327. 列出指定时间段内所有的下单产品

1327. 列出指定时间段内所有的下单产品 - 力扣(LeetCode)

为了实现所要求的查询,需要结合 Products 表和 Orders 表,首先通过产品的 product_id 进行联接,然后筛选出在 2020 年 2 月份下单数量不少于 100 的产品。具体步骤如下:

  1. 过滤日期范围:我们需要限制 Orders 表中的 order_date 在 2020 年 2 月份,即从 2020-02-012020-02-29

  2. 聚合单元数:我们需要聚合 unit 列,计算每个产品在该日期范围内的总订单数。

  3. 筛选条件:我们筛选出总订单数大于或等于 100 的产品。

  4. 联接表:通过 product_idOrders 表与 Products 表连接,以获取相应的产品名称。

以下是 SQL 查询语句:

SELECT p.product_name, SUM(o.unit) AS total_units
FROM Orders o
JOIN Products p ON o.product_id = p.product_id
WHERE o.order_date BETWEEN '2020-02-01' AND '2020-02-29'
GROUP BY p.product_name
HAVING SUM(o.unit) >= 100;

解释:

  • JOIN:连接 Products 表和 Orders 表,基于 product_id 进行匹配。

  • WHERE:过滤出 order_date 在 2020 年 2 月的订单。

  • GROUP BY:按 product_name 对产品进行分组,以便计算每个产品的总订单数。

  • HAVING:只选择总订单数大于等于 100 的产品。

该查询会返回所有符合条件的产品名称和其在 2020 年 2 月份的总订单数量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值