我正在研究查找仓库之间转移的最佳数量的查询。在一个查询中,我正在尝试获取商品代码,WarehouseA
中商品的重新订购点,WarehouseB
中商品的重新订购点以及WarehouseA
的再订货点总和和WarehouseB
。
我正在使用GUI,所以我尝试了3次调用项目代码字段和ROP(重新订购点)字段。
SELECT ItemCode, ROP, ROP, ROP
FROM Inventory
有没有办法可以为每个ROP字段以独特的方式过滤3个ROP字段?
例如。第一个ROP字段显示重新排序点whse=A
,第二个ROP字段显示重新排序点whse=B
,第三个重新排序点字段显示两者的总和。
答案 0 :(得分:1)
使用内联选择:
SELECT
ItemCode,
(SELECT ii.ROP FROM Inventory ii WHERE ii.ItemCode = oi.ItemCode AND ii.whse='A') AS ROPA,
(SELECT ii.ROP FROM Inventory ii WHERE ii.ItemCode = oi.ItemCode AND ii.whse='B') AS ROPB,
(SELECT ii.ROP FROM Inventory ii WHERE ii.ItemCode = oi.ItemCode AND ii.whse='C') AS ROPC
FROM Inventory oi
以上假设ItemCode
是关键。
答案 1 :(得分:0)
如果我理解你的问题:
SELECT
I.ItemCode,
WHA.ROP AS A_ROP,
WHB.ROP AS B_ROP,
ISNULL(WHA.ROP,0) + ISNULL(WHB.ROP,0) AS Total_ROP
FROM
Inventory AS I
LEFT JOIN
WarehouseA AS WHA ON (WHA.ItemCode = I.ItemCode)
LEFT JOIN
WarehouseB AS WHB ON (WHB.ItemCode = I.ItemCode)