mysql - LIMIT 1 有任何性能提升吗?

标签 mysql performance limit crud

在查询后附加 LIMIT 1 是否有任何性能提升?

...如果只有一个可能的条目匹配(主键的 WHERE 子句)?

SELECT `x`
FROM `unicorns`
WHERE `id` = 123
LIMIT 1

...相同,但现在是 DELETE:

DELETE FROM `unicorns`
WHERE `id` = 123
LIMIT 1

...和更新:

UPDATE `unicorns`
SET `rainbows` = `rainbows` + 1
WHERE `id` = 123
LIMIT 1

附言id 列是主键,因此它是唯一的。

多谢指教!

最佳答案

这取决于你在列上有没有索引

DELETE FROM `unicorns` WHERE `id` = 123 LIMIT 1

如果 id 是主键是没有意义的,但是

DELETE FROM `unicorns` WHERE `noindexoclumn` = 123 LIMIT 1

会提升你的表现

关于mysql - LIMIT 1 有任何性能提升吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7798298/

相关文章:

mysql - 如何在MySQL表中添加外键列?

performance - 如何加速 spaCy 词形还原?

django - 限制 Django 日志记录错误邮件在生产中不起作用

python - 我应该为 'social' 网站的后端使用什么?

php - array_combine 可能有不相等数量的元素吗? Foreach 的替代品?

c# - Lambda 表达式的性能优势

php - 使用 php 进行分页而不使用 limit 语法

mysql - 通过MySQL查询列出记录

php - 链接数据库 ID 和文件

C++ 打开一个文件并写入文件的任意位置