假设您正在加入两个表,但是您选择要使用新值更新的列之一,是否必须将其作为两个单独的语句执行,还是可以在select查询中嵌入更新语句?
即。
SELECT table1.xxx, table1.yyy, table2.zzz
FROM table1 JOIN
table2
ON table1.xxx = table2.zzz
WHERE table1.xxx = 'Y'
UPDATE table1
SET xxx = 'YES'
WHERE xxx = 'Y'
这是否有意义,或者您是否需要执行更新语句,然后单独执行选择查询?
答案 0 :(得分:3)
如果您需要联接来过滤您需要更新的行,您可以使用Update with join例如:
UPDATE table1
JOIN table2 ON table1.xxx = table2.zzz
SET table1.xxx = 'YES'
WHERE table1.xxx = 'Y'