Sobes.tech
Back to questions
Junior — Middle
64

Как влияет порядок столбцов в определении составного индекса на его эффективность и использование?

Companies where asked
AstonAston

Answer from AI

sobes.tech AI

Порядок столбцов в составном индексе критически важен для его эффективности. Индекс работает лучше всего, когда запросы фильтруют или сортируют данные по первым столбцам индекса.

Например, если есть индекс по (A, B), то запросы с условием по A или по A и B смогут эффективно использовать индекс. Но запросы только по B — нет, так как индекс упорядочен сначала по A.

Это связано с тем, что составной индекс хранит данные в порядке первого столбца, затем второго и так далее. Поэтому правильный порядок выбирается исходя из наиболее часто используемых в запросах фильтров.

Пример:

CREATE INDEX idx_ab ON table_name (A, B);
-- эффективно для WHERE A = ?
-- эффективно для WHERE A = ? AND B = ?
-- неэффективно для WHERE B = ?