Просто интересно, насколько MySQL достаточно умен, чтобы остановить поиск, если в предложении WHERE указан первичный ключ (или уникальный индекс), как если бы вы указали LIMIT 1 вручную?Делают ли предложения WHERE на первичном ключе LIMIT 1?
0
A
ответ
0
Я уверен, потому что это простая и полностью очевидная оптимизация. Ничего толкового в этом нет.
0
Согласно docs
Как только MySQL послал требуемое число строк клиенту, он прервет запрос, если вы не используете SQL_CALC_FOUND_ROWS
Так что ответ " да".
0
, как если бы вы указан LIMIT 1 вручную
Не думаю, указав limiT 1
ограничивает количество строк, возвращаемых только 1. тогда как если вы скажете where col1 = val1
, тогда все строки, соответствующие условию, будут возвращены. Теперь, поскольку primary key (or unique index)
не может иметь дубликатов, количество строк будет 1 детерминистическим, и поэтому будут возвращены 1 строки.
Не знаете, как обе они являются такими же и более того, не понимаю, почему оба эти метода должны быть дифференцированы.
Смежные вопросы
- 1. ИМЯ ИНДЕКСА НА ПЕРВИЧНОМ КЛЮЧЕ
- 2. Неисправность auto_increment на первичном ключе?
- 3. О первичном ключе в таблице?
- 4. Выбор в первичном ключе интервала SQL
- 5. Хранение больших целых чисел в первичном ключе
- 6. Создание объект с DateTime в первичном ключе
- 7. Порядок столбцов в первичном ключе, производительность
- 8. Об индексе и первичном ключе в SQL?
- 9. ошибка синтаксиса в составном первичном ключе андроида
- 10. атрибут multi value в первичном ключе rdbms
- 11. afterupdate оставляет пробелы в первичном ключе
- 12. Может ли LIMIT 0,1 ускорить выбор на основном ключе?
- 13. Альтернатива Max (ID) в сложном первичном ключе
- 14. SQL запрос: найти брешь в первичном ключе
- 15. Можно ли определить неравномерность в первичном ключе базы данных SQLite
- 16. Столбцы в первичном ключе на данных, подлежащих повторной закачке?
- 17. EF множественное отношение внешнего ключа на том же первичном ключе
- 18. Автоинкрементных на частичном первичном ключе с Entity Framework Ядром
- 19. Django DetailView: фильтр-объект, основанный на первичном ключе
- 20. Запись предложения предложения where
- 21. Игнорировать отдельную статью о первичном ключе в postgres
- 22. Cassandra TTL устанавливается на 0 на первичном ключе, если в обновлении не указан TTL, но если это так, TTL на первичном ключе не изменяется
- 23. C# - SQL не обнаруживает дублирующее значение в первичном ключе
- 24. Как обновить запись, не беспокоясь о первичном ключе
- 25. LIMIT 1 на соединении
- 26. Где должен находиться столбец секционирования в первичном ключе SQL Server?
- 27. Запрос на игнорирование предложения where
- 28. Вставка PostgreSQL на первичном ключе с ошибкой, даже на уровне сериализации
- 29. Введенный и удаленный триггер о сменном первичном ключе (SQL Server)
- 30. Проблема множественного предложения WHERE
Проведите тест, чтобы сравнить скорость выполнения с LIMIT 1 и без него, я бы поставил на то, что MySQL достаточно умен, хотя. – ceyquem