gpt4 book ai didi

mysql - 将数据复制到另一个表以及链接表中以维护关系

转载 作者:行者123 更新时间:2023-11-29 18:35:37 26 4
gpt4 key购买 nike

我有一个类似的问题,之前已经解决了here 。然而,有一个关键的区别。我需要保留与原始数据的关系。

例如,假设有一个表,其中包含如下信息:

user {id, first, last, address}

我想将地址部分从“用户”表移到其自己的“地址”表中。

user {id, first, last}
address {id, address}
user_address {user_id, address_id}

因此,新的“address”表将包含过去存储在“user”表中的数据,而“user_address”链接表将维护与原始用户的连接。

最佳答案

为了完成所需的任务,您应该应用三个迁移脚本。

INSERT INTO user(id, first, last)
SELECT
u.id,
u.first,
u.last
FROM
old_user u

 

INSERT INTO address(id, address)
SELECT DISTINCT
/* I assume, that "id" is populated automatically (by increment etc.) */
u.address
FROM
old_user u

 

INSERT INTO user_address(user_id, address_id)
SELECT
u.id,
a.id
FROM
old_user u
JOIN
address a ON a.address = u.address

关于mysql - 将数据复制到另一个表以及链接表中以维护关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45332322/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com