Встречается на собеседованиях • сегодня

Влияет ли порядок добавления полей при создании индекса по трем полям

Порядок полей в составном индексе критически важен для эффективности запросов. Индекс работает слева направо - он может использоваться только если запрос включает префикс полей в том же порядке.

Пример:

sql
-- Индекс (A, B, C)
CREATE INDEX idx_example ON table_name(A, B, C);

-- Будет использоваться индекс:
SELECT * FROM table_name WHERE A = 1 AND B = 2;
SELECT * FROM table_name WHERE A = 1;

-- Не будет использоваться индекс:
SELECT * FROM table_name WHERE B = 2;
SELECT * FROM table_name WHERE B = 2 AND C = 3;

Оптимальный порядок:

  1. Поля с условиями равенства (=)
  2. Поля для сортировки (ORDER BY)
  3. Поля с диапазонными условиями (>, <, BETWEEN)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы