如何找出在特定日期内始终有库存的商店?
如何找出已知日期内始终有库存的商店
我们有一个表格,其中记录了商店、日期和商品库存信息。现在,我们需要找出在特定日期(9 月 1 日、2 日和 3 日)内始终有库存的商店。
我们可以使用 sql 查询来解决这个问题。以下是实现思路:
- 使用 union 子查询创建一张临时表:对于每个需要检查的日期,创建一个子查询以返回商店列表。然后,使用 union 操作符将这些子查询的结果合并到一张临时表中。
- 对商店进行分组计数:使用 group by 子句按商店分组临时表中的记录。然后,使用 count(distinct 日期) 函数计算每个商店在不同日期出现的次数。
- 筛选计数等于日期数量的商店:使用 having 子句过滤结果,仅保留计数等于检查日期数量(在本例中为 3)的商店。
以下是一个示例查询:
SELECT DISTINCT 商店 FROM ( SELECT 商店 FROM 表 WHERE 日期='2021-09-01' UNION SELECT 商店 FROM 表 WHERE 日期='2021-09-02' UNION SELECT 商店 FROM 表 WHERE 日期='2021-09-03' ) AS tab GROUP BY 商店 HAVING COUNT(DISTINCT 日期)=3;
这个查询将返回 9 月 1 日、2 日和 3 日都有库存的商店列表。
以上就是如何找出在特定日期内始终有库存的商店?的详细内容,更多请关注其它相关文章!