Middle
За какво служат индексите? Обяснете с пример за съставен индекс (userId, updatedAt): три заявки — по userId, по userId+updatedAt, само по updatedAt. Къде ще работи индексът?
sobes.tech AI
Отговор от AI
Индексы нужны для ускорения поиска данных в базе, уменьшая количество просматриваемых строк.
Рассмотрим составной индекс по (userId, updatedAt):
- Запрос по
userId— индекс сработает, так какuserIdявляется первой колонкой в индексе. - Запрос по
userId+updatedAt— индекс сработает эффективно, так как совпадает с порядком колонок в индексе. - Запрос только по
updatedAt— индекс не сработает, потому что в составном индексе сначала идётuserId, аupdatedAtбезuserIdне может быть использован для поиска.
Итог: составной индекс полезен для запросов, начинающихся с первой колонки индекса, но не для запросов, использующих только последующие колонки.