早上好。 我想問一些問題,但在此之前,我想解釋我目前有什麼問題。使用另外兩個表格的計算更新表格
我有3個表,他們是。
Table: Receiving
Table: GeneralInventory
和最後一個是Table: item_master_list
我在VB.Net中有一個程序可以做ff。
1.Based上Table: Receiving
我將選擇一個RINo
和我將使用的示例中的圖像上的上述(RI00000001
)
2.After在Table: Receiving
選擇RI00000001
我將按下按鈕 POST
和之後,該是我的代碼所做的。
-The代碼將檢查數據從列的Table:Receiving
ItemCode
在列的Table: GeneralInventory
ItemCode
相同的數據。
- 現在,如果比較結果爲真或有從兩個表的列QtyPack
和從Table: Receiving
QtyStan
將添加相同的數據/ SUM在列GeneralInventory
- 現在的Qty
如果比較結果爲假或那裏有兩個表格之間沒有比較,那麼數據將被插入GeneralInventory
。
我希望你能得到它,但如果不是這裏的示例圖像。
,現在我對這一程序代碼是這樣的。
查找代碼。
Select *
From
GeneralInventory GI
Inner Join
Receiving RE on GI.ItemCode = RE.ItemCode
Where RE.RINo = 'MyValue'
現在,如果上述代碼是真的,那麼這是用於更新
UPDATE GeneralInventory GI
INNER JOIN receiving RE ON GI.ItemCode = RE.ItemCode AND
GI.Qty = RE.QtyPack
SET GI.Qty = CAST(GI.Qty + RE.QtyPack + RE.QtyStan AS DECIMAL(6,2))
Where RE.RINo = 'MyValue'
的代碼或如果是假的,那麼這是用於插入的代碼。
INSERT INTO GeneralInventory(ItemCode, Qty)
SELECT RE.ItemCode, RE.QtyPack
FROM
Receiving RE LEFT JOIN
GeneralInventory GI ON GI.ItemCode = RE.ItemCode AND
GI.Qty =CAST(RE.QtyPack + Re.QtyStan AS DECIMAL(6,2))
WHERE RE.RINo = 'MyValue'
現在,這裏是我的問題和我的問題是有關Item_Master_List
,就是這樣。
我該如何做到這樣?首先在我將更新Table:GeneralInventory
使用Table: Receiving
我想在Table: item_master_list
做一些計算我的意思是我更新或插入數據在generalinventory
之前我會乘以item_masterlist
。
就像找到item_master_list
相同的值,然後保存它generalinventory
我希望你得到它之前使用的QtyperUoM
使用值的列相乘的receiving
。
TYSM
是否有任何條件可以從另一個表中進行乘法運算? –
請參閱http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html –
@ AT-2016我認爲沒有條件,它就像乘以QtyPack * QtyperUoM –