首页 > 解决方案 > MySQL 中哪个更快,更新整个表或使用 WHERE 子句更新?

问题描述

我有一个简单的问题。有类似的问题。但没有一个让我满意。

查询:

UPDATE products SET indexed = 1;

UPDATE products SET indexed = 1 WHERE indexed = 0;

哪一个给定的查询会更快?

表中的行数可以在 1M 和 2M 之间。行数indexed = 0最多为 1K 行。

标签: mysql

解决方案


更快,UPDATE products SET indexed = 1 WHERE indexed = 0;因为它只会在索引为 0 的行上查找和更新

编辑:还要检查@EzLo 的建议!


推荐阅读