2016-04-21 157 views
-1

我需要连接update语句的where子句中的多个表。精确地说,有两个主从关系表。我需要更新主表中的一行,但需要检查其从表中的外键条目。需要在sql语句的where子句中使用join?

表A

TableId,Empid,EmpName,EmpAdd 

表B

TableId,Empid,DeptId,DeptName 

当行被插入表A,表B还具有插入。假设我需要更新EmpAddTableA,这应基于两个表中的列Empid,DeptId,DeptName。所以我想我需要加入两张桌子。

+2

编辑你的问题,并提供样本数据和预期的结果。 –

+0

添加表格定义,样本表格数据和预期结果。同时向我们展示您当前的查询尝试。 – jarlh

+0

没有表格,没有数据,没有洞察力。有点像没有鞋子,没有服务,但对于数据库。 –

回答

0

什么有关检查EXISTS,而不是连接:

UPDATE tbl_master m 
    SET m.some_column = some_value 
WHERE m.masteID = updatetable_id 
    AND EXISTS (SELECT * FROM tbl_slave s WHERE s.masterID = m.masterID)