【发布时间】:2012-06-07 06:38:06
【问题描述】:
以下哪个符号更好?
SELECT id,name,data FROM table WHERE id = X
或
SELECT id,name,data FROM table WHERE id = X LIMIT 1
我认为它不应该有“LIMIT”。
谢谢!
【问题讨论】:
以下哪个符号更好?
SELECT id,name,data FROM table WHERE id = X
或
SELECT id,name,data FROM table WHERE id = X LIMIT 1
我认为它不应该有“LIMIT”。
谢谢!
【问题讨论】:
即使您要获取 1 条记录,也始终将 LIMIT 与 select 语句一起使用,因为它会加快您的查询速度。所以使用:
SELECT id,name,data FROM table WHERE id = X LIMIT 1
例如: 如果您的表中有 1000 条记录而不是使用
SELECT id,name,data FROM table WHERE id = X
即使找到该 id,它也会遍历 1000 条记录 但是如果你像这样使用 LIMIT
SELECT id,name,data FROM table WHERE id = X LIMIT 1
当找到第一条记录时它将停止执行。
【讨论】:
id,那么它可能确实 - 或应该 - 具有唯一索引)两个查询很可能都使用该索引。
如果id 存在唯一约束,那么它们将完全相同。
如果没有唯一约束(我会在名为 id 的列上发现这非常令人惊讶),那么哪个更好取决于您想要做什么:
LIMIT。LIMIT 1。【讨论】: