gpt4 book ai didi

MySQL从具有相同主键的另一个表中更新完整列数据(3000万行)

转载 作者:行者123 更新时间:2023-11-29 13:52:57 26 4
gpt4 key购买 nike

我的 MySQL 数据库中有两个表:Final 和 Primary。决赛 table :

UID (Primary Key), Surface (Varchar), BCD_Value (Int , Index), Env_Value (Int)

主表:

UID (Primary Key), BCD_Value (Int , Index)

每个表中有 3000 万行。主表具有正确的 BCD_Value。我必须使用匹配 UID 上的主表中的值来更新最终表的 BCD_Value。

我在 MySQL 命令行中使用以下内容

update Primary pri, Final fin set fn.BCD_Value = pri.BCD_Value where fin.UID = pri.UID

但 36 小时后没有任何作用。

此外,我在 perl 中实现了一个代码,它一次为 5000 行创建更新语句(循环 3000 万/5000 次)。现在它可以工作了,但我迫切需要紧固它。

最佳答案

尝试转换为 ANSI SQL-92 语法

UPDATE Final fin INNER JOIN `Primary` pri
ON fin.UID = pri.UID
SET fn.BCD_Value = pri.BCD_Value

更新所有记录需要时间,因为它也会更新索引。

首先尝试删除 Final.BCD_Value 上的索引,然后在更新后再次添加。

关于MySQL从具有相同主键的另一个表中更新完整列数据(3000万行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16394286/

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