我一直在阅读这里的所有问题,但我仍然不明白
我有两张相当大的相同桌子。我想packages_sorted
用数据更新表packages_sorted_temp
而不破坏现有数据packages_sorted
表packages_sorted_temp
仅包含 2 列的数据,db_id
并且quality_rank
表packages_sorted
包含所有 35 列的数据,但quality_rank
为 0
每个表上的主键是db_id
,这就是我想要触发的ON DUPLICATE KEY UPDATE
。
本质上,我如何通过和更改合并这两个表packages_sorted
。quality_rank
0 到quality_rank
存储在packages_sorted_temp
同一个主键下
这是不起作用的
INSERT INTO `packages_sorted` ( `db_id` , `quality_rank` )
SELECT `db_id` , `quality_rank`
FROM `packages_sorted_temp` ON DUPLICATE
KEY UPDATE `packages_sorted`.`db_id` = `packages_sorted`.`db_id`