用另一列相同 table 名称的数据替换一列的数据,相同的列名不同的数据库名称

Replace data of a column with data of another column same table names, same column names different databases names

正在将旧版本的 prestashop 更新为新版本。在创建查询以将列数据从源数据库迁移到目标数据库时遇到问题(相同的列和 table 名称,不同的数据库名称)。

换句话说,我需要用源列的数据替换目标列的数据。这是我目前的查询:

INSERT INTO `destination_db`.`destination_table` 
Select * FROM `source_db`.`source_table` 
on duplicate key UPDATE `destination_db`.`destination_table`.`destination_colum`=`source_db`.`source_table`.`source_column`;

在 运行 查询之后,这是结果:MySQL 返回了一个空结果集(即零行)

非常感谢任何解决查询的帮助。

试试这个,因为在我看来你可能只是在语法上犯了一个小错误

您忘记放入 UPDATE {tableName} SET {column} = {sourceColumn}。

INSERT INTO `destination_db`.`destination_table` (`destination_db`.`destination_table`.'destination_column1',`destination_db`.`destination_table`.'destination_column2',`destination_db`.`destination_table`.'destination_column3')
SELECT 
       `source_db`.`source_table`.'source_column1',
       `source_db`.`source_table`.'source_column2',
       `source_db`.`source_table`.'source_column3'      
FROM 
        `source_db`.`source_table` 
ON 
     DUPLICATE KEY 
            UPDATE `destination_db`.`destination_table`.`destination_column1`=`source_db`.`source_table`.`source_column1`;