[英]How to subtract data from table2 to table1
我正在嘗試像這樣在表中減去和添加現有值
表格1
id q q_out
1 10 0
2 10 0
表 2
id q
1 2
1 1
2 1
2 2
當我更新表 1 時,我期待這個輸出:
id q q_out
1 7 3
2 7 3
但我得到這個輸出:
id q q_out
1 8 2
2 9 1
這是我的查詢:
UPDATE
db_pro d
JOIN cart c ON d.pro_num = c.p_num
SET
d.q = (d.q - c.q),
d.out_q = (d.out_q + c.q)
WHERE
c.s_num='13-37478' and
c.class not like 'Books' and
c.remarks like 'On Process'
您需要加入表格購物車的聚合值:
UPDATE
db_pro d
JOIN (
select p_num, sum(q) q from cart
WHERE
s_num='13-37478' and
class not like 'Books' and
remarks like 'On Process'
group by p_num
) c ON d.pro_num = c.p_num
SET
d.q = (d.q - c.q),
d.out_q = (d.out_q + c.q)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.