首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >移动缓慢的库存物料查询

移动缓慢的库存物料查询
EN

Stack Overflow用户
提问于 2019-09-19 22:13:49
回答 1查看 310关注 0票数 0

我正在尝试返回一个移动缓慢的库存项目列表。只要有促销活动,这些商品就会被写入saleItems表。我想从inventoryMaster表中获取那些在过去N天内没有出现在saleItems表中的项目。这是我的结构。

代码语言:javascript
复制
db_inventory - all inventory items are stored here in stockmain table
db_main - all sale transactions recorded here in saleitems table

下面的查询给出了一个错误

代码语言:javascript
复制
SELECT db_inventory.StockMain.ItemCode 
FROM 
db_inventory.StockMain
JOIN 
db_main.SaleItems 
ON 
db_main.SaleItems.ItemID=db_inventory.StockMain.ItemCode
WHERE NOT IN(
   SELECT db_main.SaleItems.ItemID FROM db_main.SaleItems 
   WHERE db_main.SaleItems.saledate BETWEEN 
   DATE_SUB(CURDATE(),INTERVAL 90 DAY) AND NOW()
)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-19 22:28:14

对相关子查询使用NOT EXISTS

代码语言:javascript
复制
SELECT ItemCode 
FROM db_inventory.StockMain i
WHERE NOT EXISTS (
    SELECT 1
    FROM db_main.SaleItems m
    WHERE m.ItemID = i.ItemID AND m.saledate > NOW() - INTERVAL 90 DAY
)

子查询确保,对于库存中的给定商品,sales表中在过去90天内不存在任何记录。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58013019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档