Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 根据相关表从另一列更新列_Mysql_Join - Fatal编程技术网

Mysql 根据相关表从另一列更新列

Mysql 根据相关表从另一列更新列,mysql,join,Mysql,Join,我遇到了一个问题,我想根据相关表中的条件在列之间复制数据。从eglasius对这个类似问题的最高答案来看,我提出了以下解决方案: UPDATE table1 SET table1.column2 = table2.column1 FROM table1 NATURAL JOIN table2 WHERE table2.column1 = "myCondition" 这个查询给了我一个从FROM开始的语法错误,尽管用SELECT替换UPDATE子句似乎不会产生任何问题。在UPDATE的情况下

我遇到了一个问题,我想根据相关表中的条件在列之间复制数据。从eglasius对这个类似问题的最高答案来看,我提出了以下解决方案:

UPDATE table1 SET table1.column2 = table2.column1 
FROM table1 NATURAL JOIN table2 
WHERE table2.column1 = "myCondition"

这个查询给了我一个从
FROM
开始的语法错误,尽管用
SELECT
替换
UPDATE
子句似乎不会产生任何问题。

UPDATE
的情况下,mySQL似乎不喜欢
FROM
语法。我成功地将连接移动到了查询的前面,然后是
join
,最后是
WHERE
条件,如下所示:

UPDATE table1 NATURAL JOIN table2
SET table1.column2 = table1.column1
WHERE table2.column1 = "myCondition"

我把这个解决方案部分归功于@Eric对我的回答