一尘不染

MySQL更新列与另一个表中的值

mysql

我有两个桌子,看起来都像

id  name  value
===================
1   Joe     22
2   Derk    30

我需要根据每个表中的检查名称复制valuefrom tableA到的值tableB

UPDATE声明有任何提示吗?


阅读 265

收藏
2020-05-17

共1个答案

一尘不染

除了此答案外,如果您需要根据tableA.value动态更改tableB.value,则可以执行以下操作:

UPDATE tableB
INNER JOIN tableA ON tableB.name = tableA.name
SET tableB.value = IF(tableA.value > 0, tableA.value, tableB.value)
WHERE tableA.name = 'Joe'
2020-05-17