Update语句与子查询

UPDATE table1

SET column1 = (SELECT column2 FROM table2 WHERE table2.id = table1.id)

WHERE condition;

 

table1和table2是两个表,

想要将table2中的column2的值更新到table1的column1中。

 

子查询 `(SELECT column2 FROM table2 WHERE table2.id = table1.id)` 用来检索table2中与table1中相同id的行的column2的值,并将其更新到table1的column1中。

 

最后的WHERE条件用来指定更新的行。

 

请注意,子查询必须返回单个值,否则会报错。

如果子查询返回多个值,可以使用LIMIT关键字来限制结果集数量。

 

你可能感兴趣的:(mysql)