Проверяет понимание оптимизации составных индексов.
Порядок полей определяется:
Селективностью (высокоселективные первыми)
Частотой использования в запросах
Типом операций (= перед диапазонами)
Правила порядка полей:
Равенства перед диапазонами
-- Лучше: WHERE status = 'active' AND created_at > '2023-01-01'
CREATE INDEX idx_status_created ON Orders(status, created_at);Высокая селективность первых
Поле с 1000 уникальных значений перед полем с 2 значениями
Часто используемые в WHERE первыми
Пример плохого индекса:
-- Плохо: created_at имеет низкую селективность в начале
CREATE INDEX idx_created_status ON Orders(created_at, status);