我想你的幫助使存儲過程來更新庫存表。 起初,我將所有的賬單項存儲在一張臨時表中,然後一旦保存就會從庫存表中扣除庫存,然後將其存儲在Bill_Item表中,並且Temp_Bill_Item表將被刪除。我怎樣才能在sql表中循環
0
A
回答
2
無論是臨時表,也不遊標是必需的這一點:
update stock_table
set qty = qty - bi.qty
from stock_table st
join bill_items bi
on bi.item_id = st.item_id
and bi.itemcode = st.itemcode;
這假設每個項目是隻出現一次在bill_items表。如果你可以有相同的itemid/itemcode多行你需要一個稍微不同的說法:
update stock_table
set qty = qty - bi.total_qty
from stock_table st
join (select item_id, itemcode, sum(qty) as total_qty
from bill_items
group by item_id, itemcode
) bi
on bi.item_id = st.item_id
and bi.itemcode = st.itemcode;
(語法沒有測試過,你沒有張貼樣本數據一起玩)
-1
爲了您的目的,我會考慮使用遊標。
http://msdn.microsoft.com/en-us/library/ms180169.aspx
要注意的是在SQL中使用遊標有嚴重的性能問題,如果你不小心!
相關問題
- 1. 我怎樣才能循環這個
- 2. 我怎樣才能讓貓殼循環?
- 3. 我怎樣才能在SQL
- 4. 我怎樣才能使循環在codeigniter循環內?
- 5. 我們怎樣才能在單線循環中編寫這個?
- 6. 我怎樣才能讓計數器在while循環中工作?
- 7. 我怎樣才能在沃森談話中打破循環
- 8. 我怎樣才能在tableView中使用循環swift
- 9. 我怎樣才能在我的pushd棧上循環?
- 10. 我怎樣才能從無盡循環中逃脫?
- 11. 我怎樣才能傳遞一個數組在其外循環?
- 12. 我怎樣才能使這個代碼循環在Python
- 13. 我怎樣才能使這個循環更高性能
- 14. 我怎樣才能
- 15. 我怎樣才能
- 16. 我怎樣才能
- 17. 我怎樣才能
- 18. 我怎樣才能簡化我的循環?
- 19. 我怎樣才能重建我的陣列沒有循環?
- 20. 我怎樣才能在Ionic2
- 21. 我怎樣才能在Zebble
- 22. 我怎樣才能在PreferenceScreen
- 23. 我怎樣才能在vim
- 24. 我怎樣才能在圖
- 25. 我怎樣才能在Python
- 26. 我怎樣才能在VB.net
- 27. 我怎樣才能在DB2
- 28. 我怎樣才能在Java
- 29. 我怎樣才能在Python
- 30. 我怎樣才能在PAM