我有一个Mysql表,其中只有一个主键(称为pkey),它是自动递增的。我想克隆一行数据,保持所有数据相同,除了主键应该成为下一个可用值,由自动递增定义。
我的第一个问题是,以下查询是否可行?
UPDATE `table` SET pkey='next_available_primary_key' WHERE pkey='old_primary_key'
如果您尝试过
UPDATE `table` SET pkey=null WHERE pkey='old_primary_key'
但是它只将主键的值设置为零。非常感谢任何帮助/建议。
更新:
我想我应该补充一下,我并不真正想要表中的两份数据副本。我只想更改主键。因此,如果我使用INSERT SELECT,我必须使用ON DUPLICATE KEY UPDATE pkey='next_available_primary_key'进行补偿,我只是不确定如何做到这一点...