我必须根据电子邮件使用另一个表(10 000 000 条记录)中的字段值更新表(250 000 条记录)中的一个字段...

我试过了:
更新表 1 t1,表 2 t2
设置 t1.country = t2.country
WHERE t1.email = t2.email


但是我永远得到了“正在执行查询”。

我应该使用什么查询?

谢谢

最佳答案

这将是使用 JOIN 的好机会。

UPDATE table1 as t1
JOIN table2 t2 ON t1.email = t2.email
SET t1.country = t2.country

处理您的查询仍然需要一段时间,但它应该可以显着减少时间。

关于Mysql更新查询超过1000万条记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8854726/

10-15 09:26