简单的问题:D。我知道怎么做,但我必须要快。
最省时的方法是什么?
场景:tableA
和tableB
两个表,从tableB.columnB
更新tableA.columnA
,基于在 tableA.primarykey = tableB.primarykey
上。
问题:tableA
和 tableB
各有超过 10.000.000 条记录。
最佳答案
update TableA as a
join TableB as b on
a.PrimaryKey = b.PrimaryKey
set a.ColumnA = b.ColumnB
更新 1000 万行不可能很快。好吧……至少与更新一行相比。
你能做到的最好:
- 连接字段的索引,但你已经知道了,因为这些字段是主键
- 根据
where
条件限制(如果适用)。索引涵盖需要加速的条件。
关于mysql - 使用 MySQL 进行快速交叉表更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6393763/