mysql 使用另一个表中的值更新列

标签 mysql sql sql-update

我有两张 table ,看起来都像

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

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

对于这个UPDATE语句有什么提示吗?

最佳答案

除了这个答案之外,如果您需要根据 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'

关于mysql 使用另一个表中的值更新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58400048/

相关文章:

MySQL Group_Concat 不在

mysql - mysql中不使用分析函数的RANK函数的性能

php - 如何放入JSON对象非英文字母?

php - 如何设置MySQL超时时间更长?

android - SQLite:创建多个表与为大数据集过滤一个数据库

sql - 替换列的值不应更新 PostgreSQL 中的 last_modified 时间

java - JDBC字符串中的Mysql session 变量

sql - 是否有一种好的 SQL 方法来汇总以日期范围 block 作为输入的表?

mysql - 添加一个新的 MySQL Col,其行依赖于其他行

php - Silverstripe SQL更新多行