[英]Updating Inventory table from Sales table
嘿,我有2张桌子。
库存:
ITEMNAME | QUANTITY
---------|---------
ITEM A | 200
ITEM B | 310
ITEM C | 255
ITEM D | 115
销售:
SALENO | QUANTITY | ITEMNAME
-------|----------|---------
1001 | 5| ITEM A
1002 | 100| ITEM X
1003 | 1| ITEM C
1004 | 20| ITEM B
我遇到的问题是使用特定的SALENO更新库存QUANTITY值。
可以说我已经将库存更新到SALENO 1002。
SALENO 1003和1004是新的销售,因此我只需要从我的库存数量中减去这2个特定订单。 我该如何实现?
任何建议表示赞赏。 谢谢!
要在Oracle中使用多个表编写一条更新语句,您需要使用如下语法:
UPDATE Inventory SET
Inventory.QUANTITY = Inventory.QUANTITY - (SELECT
Sales.QUANTITY
FROM Sales
WHERE
Sales.ITEMNAME = Inventory.ITEMNAME AND
Sales.SALENO IN (1003, 1004)
)
WHERE
(Inventory.ITEMNAME IN
(
SELECT
s.ITEMNAME
FROM SALES s
WHERE
s.SALENO IN (1003, 1004)
)
)
在这里工作的SQL提琴
以下工作可行吗?
UPDATE Inventory, Sales
SET Inventory.QUANTITY = Inventory.QUANTITY - Sales.QUANTITY
WHERE Inventory.ITEMNAME = Sales.ITEMNAME
AND Sales.SALENO IN (1003, 1004)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.