添加来自不同表的值:Oracle sql

时间:2017-10-31 17:44:03

标签: sql oracle11g

我正在开发一个数据库,我需要计算可用的库存数量。

我有来自库存表的itemquantity,来自购买表的purchasequantity和来自销售表的salesquantity

我需要执行itemquantity = itemquantity + purchasequantity - salesquantity

我使用了group by并获得了salesquantitypurchasequantity的SUM值。

我无法想象如何进行操作。

1 个答案:

答案 0 :(得分:0)

您可以使用MERGE INTO语句进行更新。希望你有合适的专栏加入。

MERGE INTO stock sr USING ( SELECT
    s.id_column,
    ( s.itemquantity + p.purchasequantity - s.salesquantity ) new_itemquantity
    FROM
    stock st
    JOIN purchase p ON st.join_column1 = p.join_column1
    JOIN sales s ON st.join_column2 = s.join_column2
)
m ON ( m.id_column = sr.id_column )
WHEN MATCHED THEN UPDATE SET sr.itemquantity = new_itemquantity;