选择行 MySQL 的最佳方法



以下哪种表示法更好?

SELECT id,name,data FROM table WHERE id = X

SELECT id,name,data FROM table WHERE id = X LIMIT 1

我认为它不应该有"限制"。

谢谢!

如果对

id有唯一的约束,那么它们将是完全相同的。

如果没有唯一的约束(我会在名为 id 的列上发现非常令人惊讶),那么哪个更好取决于您要做什么:

  • 如果要查找与条件匹配的所有行,请不要使用 LIMIT
  • 如果要查找与条件匹配的任何行(并且您不在乎哪个行),请使用 LIMIT 1 .

即使您正在获取 1 条记录,也始终将 LIMIT 与 select 语句一起使用,因为它会加快您的查询速度。所以使用:

SELECT id,name,data FROM table WHERE id = X LIMIT 1

例如:如果表中有 1000 条记录,则

使用
SELECT id,name,data FROM table WHERE id = X

比它将遍历 1000 条记录,即使找到 ID但是如果你像这样使用 LIMIT

SELECT id,name,data FROM table WHERE id = X LIMIT 1

比找到第一条记录时它将停止执行。

相关内容

  • 没有找到相关文章

最新更新