如何在一个查询中连接两个表
问题描述:
我有两个表,我想将它们一起更新。我必须使用连接吗?如何在一个查询中连接两个表
UPDATE tb_empgroc_master SET total_items='$total_items', total_amount='$total_amount' WHERE empgrocmstID='$empgrocmstID';
UPDATE tb_empgrocery SET qty_ordered='$qty_ordered', amount='$amount' WHERE empgrocID='$empgrocID';
这两个表具有相同的字段,即order_no
。
感谢您的帮助。
答
试试这个:
update tb_empgroc_master
JOIN tb_empgrocery on tb_empgroc_master.order_no = tb_empgrocery.order_no
set tb_empgroc_master.total_items='$total_items',
tb_empgroc_master.total_amount='$total_amount',
tb_empgrocery.qty_ordered='$qty_ordered',
tb_empgrocery.amount='$amount'
where tb_empgroc_master.empgrocmstID='$empgrocmstID'
OR tb_empgrocery.empgrocID='$empgrocID'
答
更新tb_empgroc_master T1,T2 tb_empgrocery
集t1.total_items = '$ TOTAL_ITEMS',t1.total_items = '$ TOTAL_AMOUNT',
t2.qty_ordered ='$ qty_ordered ',t2.amount ='$ amount'
其中t1.order_no = t2.order_no;
为什么要一起更新它们? – rghome
,因为如果我删除'tb_empgrocery'中的行或修改它的值。 'tb_empgroc_master'必须更新和计算'tb_empgrocery' @rghome中的行数 – Micaela