如果子表的记录字段具有值,如何更新字段?

时间:2014-02-20 08:07:44

标签: mysql sql-update

我想更新表1,如果表2中的某个字段与表1中的idA相同,则表示已完成为是,否则为完成=是。

我已经完成了更新新更新的触发器,但现在我必须更新表中已有的所有旧记录。

表1

idA b  done
--------------
 1  a   
 2  b
 3  c

表2

idB idA done
--------------
 1   1   yes
 2   1   no
 3   1   yes
 4   2   no
 5   2   no
 6   3   no
 7   3   yes

http://sqlfiddle.com/#!2/8ee5f3/5

1 个答案:

答案 0 :(得分:0)

试试这个:

UPDATE table1 JOIN table2
ON table1.idA = table2.idA
AND table2.done = yes
SET table1.done = yes

工作演示:http://sqlfiddle.com/#!2/6066f/1