mysql - 如何在 UPDATE 查询中执行三个表 JOIN?

标签 mysql join

我提出了一个问题并得到了这个有帮助的回复。

   UPDATE TABLE_A a JOIN TABLE_B b
   ON a.join_col = b.join_col AND a.column_a = b.column_b
   SET a.column_c = a.column_c + 1

现在,如果有三个表涉及类似这样的事情,我希望这样做。

    UPDATE tableC c JOIN tableB b JOIN tableA a

我的问题基本上是...是否可以在 UPDATE 语句上进行三个表连接?它的正确语法是什么?

我要执行以下操作吗?

 JOIN tableB, tableA
 JOIN tableB JOIN tableA

最佳答案

答案是,可以。

尝试这样:

UPDATE TABLE_A a
    JOIN TABLE_B b ON a.join_col = b.join_col AND a.column_a = b.column_b
    JOIN TABLE_C c ON [condition]
SET a.column_c = a.column_c + 1

对于一般更新加入:

UPDATE TABLEA a
JOIN TABLEB b ON a.join_colA = b.join_colB
SET a.columnToUpdate = [something]

关于mysql - 如何在 UPDATE 查询中执行三个表 JOIN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39623920/

相关文章:

php - 使用 PHP 备份数据库

mysql - 如何连接同一个表中的多个列?

mysql - 按计数选择一对多关系

sql - 如何查找未加入的记录?

mysql - 使用子查询与 LEFT JOIN 一起选择 MAX 值

mysql - 保存不带 Null 的模型值

php - 我的 SQL 查询语法错误

java - MySQL连接超时

javascript - 使用 PHP 和 JQuery 编辑 HTML 表模板

从多个表中进行 SQL SELECT