我正在开发一个项目,我需要将旧表中包含200多个字段的行导入到新表中,但id字段需要前面加上“5”。
我正在使用此SQL语句:
INSERT INTO brinkoet_dev.property
SELECT liveprop.*
FROM brinkoet_live.property liveprop
WHERE listing_office='Brink';
但没有明显的方法可以更改现有字段的内容。
答案 0 :(得分:1)
在新表格中,将“id”字段重命名为“id_old”。在新表中,在此表的末尾添加“id”字段。然后,您可以执行以下操作:
INSERT INTO brinkoet_dev.property
SELECT liveprop.*, CONCAT(5, liveprop.id)
FROM brinkoet_live.property liveprop
WHERE listing_office='Brink';
完成后,只需从新表中删除id_old字段。
答案 1 :(得分:0)
试试这个:
INSERT INTO brinkoet_dev.property
SELECT concat(5, liveprop.ID), field2, field3
FROM brinkoet_live.property liveprop
WHERE listing_office='Brink'
其中field2
和field3
是liveprop
表的其余字段(不包括ID
)。
以下是fiddle供您使用。