我有包含 country_iso2_code
和 country_id
字段的表 addresses
,以及包含 iso2_code< 的表
字段。现在 countries
/country_id
和 iso2_code
字段为空。我想将country_iso2_code
从addresses
表传输到country
表中的iso2_code
,并使用设置表之间的关系Country_id
字段。请帮忙寻找解决方案。
示例:
表地址
编号 |国家 ISO2 代码 |国家ID
1 |美国 |空
2 |美国 |空
3 |法国 |空
结果:
表地址
编号 |国家 ISO2 代码 |国家ID
1 |美国 | 1
2 |美国 | 2
3 |法国 | 3
表国家
编号 | iso2_code
1 |美国
2 |美国
3 |法国
最佳答案
只需创建国家/地区
(如果尚不存在),使用INSERT INTO ... SELECT
进行填充,然后更新地址
:
CREATE TABLE countries (id int, iso2_code varchar(10));
INSERT INTO countries (id, iso2_code)
SELECT id, country_iso2_code
FROM addresses
UPDATE addresses
SET country_id = id
关于mysql - 将表一分为二并保存关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43223741/