扫码关注官方订阅号
我有两张桌子,看起来都像
id name value =================== 1 Joe 22 2 Derk 30
我需要根据每个表中的检查名称将 value 的值从 tableA 复制到 tableB 。
value
tableA
tableB
对于这个 UPDATE 语句有什么提示吗?
UPDATE
您需要连接两个表:
例如,您想要将 name 的值从 tableA 复制到 tableB,它们具有相同的 ID
name
ID
UPDATE tableB t1 INNER JOIN tableA t2 ON t1.id = t2.id SET t1.name = t2.name WHERE t2.name = 'Joe'
更新1
UPDATE tableB t1 INNER JOIN tableA t2 ON t1.id = t2.id SET t1.name = t2.name
更新2
UPDATE tableB t1 INNER JOIN tableA t2 ON t1.name = t2.name SET t1.value = t2.value
除了这个答案之外,如果您需要根据 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'
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
您需要连接两个表:
例如,您想要将
name
的值从 tableA 复制到tableB
,它们具有相同的ID
更新1
更新2
除了这个答案之外,如果您需要根据 tableA.value 动态更改 tableB.value,您可以执行以下操作: