如何一次更新多条记录 MySQL
How to update multiple records at once MySQL
我有 2 个数据库,一个是旧的,另一个是最近更新和使用的新数据库,但是我的一个团队成员错误地更新了旧数据库中的一些东西,现在我们正在尝试找到一个方式,如何从旧数据库中提取那个并更新新数据库中的记录。
我的 2 个数据库在结构上是相同的,除了当我从两个 table 的 ID 上提取标题时,我得到的标题很少不同,但其余的相同。
有人可以帮忙吗?
我所拥有的是来自旧 table 的 ID 列表,该列表更改了大约 2000 条记录,我需要的是一个 mysql 脚本,该脚本将遍历所有这些记录并更新新的数据库内容那个。
Table 两个 table 中的结构是:
ID, title, content
所以我正在尝试这样的事情:
UPDATE `dbA`.table SET `dbA`.content = `dbB`.contet WHERE `dbB`.`ID` BETWEEN 0 AND 2000
如果您尝试手动完成,这可能是一项真正艰巨的任务。
您可以尝试一些工具来做到这一点,例如 coldiff
您可以使用以下方法实现它:
UPDATE tableA A
JOIN tableB B
ON B.id = A.id
SET A.content = B.content
WHERE B.id BETWEEN 0 AND 2000
您说的是不同的数据库 - 但它们在同一个 MySQL 实例上吗?如果不能,您可以通过 FEDERATED 引擎公开吗?
如果是这种情况,您只需要将 2000 个 ID 加载到新的 table 和....
REPLACE INTO newdb.table (id, content, title)
SELECT o.id, o.content, o.title
FROM olddb.table o
INNER JOIN olddb.changed_ids c
ON o.id=c.id;
你试过这样的事情吗?
UPDATE `dbA`.table1 t1
JOIN `dbB`.table2 t2
ON t1.id = t2.id
SET t1.content = t2.content
我有 2 个数据库,一个是旧的,另一个是最近更新和使用的新数据库,但是我的一个团队成员错误地更新了旧数据库中的一些东西,现在我们正在尝试找到一个方式,如何从旧数据库中提取那个并更新新数据库中的记录。
我的 2 个数据库在结构上是相同的,除了当我从两个 table 的 ID 上提取标题时,我得到的标题很少不同,但其余的相同。
有人可以帮忙吗? 我所拥有的是来自旧 table 的 ID 列表,该列表更改了大约 2000 条记录,我需要的是一个 mysql 脚本,该脚本将遍历所有这些记录并更新新的数据库内容那个。
Table 两个 table 中的结构是:
ID, title, content
所以我正在尝试这样的事情:
UPDATE `dbA`.table SET `dbA`.content = `dbB`.contet WHERE `dbB`.`ID` BETWEEN 0 AND 2000
如果您尝试手动完成,这可能是一项真正艰巨的任务。
您可以尝试一些工具来做到这一点,例如 coldiff
您可以使用以下方法实现它:
UPDATE tableA A
JOIN tableB B
ON B.id = A.id
SET A.content = B.content
WHERE B.id BETWEEN 0 AND 2000
您说的是不同的数据库 - 但它们在同一个 MySQL 实例上吗?如果不能,您可以通过 FEDERATED 引擎公开吗?
如果是这种情况,您只需要将 2000 个 ID 加载到新的 table 和....
REPLACE INTO newdb.table (id, content, title)
SELECT o.id, o.content, o.title
FROM olddb.table o
INNER JOIN olddb.changed_ids c
ON o.id=c.id;
你试过这样的事情吗?
UPDATE `dbA`.table1 t1
JOIN `dbB`.table2 t2
ON t1.id = t2.id
SET t1.content = t2.content