【发布时间】:2017-01-23 11:58:00
【问题描述】:
我有一个表template,字段为json。由于json 可以与许多template (1:n) 相同,因此我创建了另一个表template_json 并将字段template_json_id (FK) 添加到template。
要将所有数据从一个表迁移到另一个表,我使用了以下 SQL:
INSERT INTO db.template_json (`json`)
SELECT `json`
FROM db.template;
这可以完美地迁移数据,但当然会让我的template.template_json_id 为空。我需要使用插入的template_json.id 更新每一行的template.template_json_id (FK)。
是否可以在一个查询中执行此操作?
【问题讨论】:
-
你有重复的吗?
-
很多 json 是重复的,是的
-
你是否在 template_json 表中添加了自增主键?
-
是的,
idint(11) NOT NULL AUTO_INCREMENT
标签: mysql sql normalization