Посмотри на запрос с условиями по колонкам A, B, C. В каких условиях индекс работает? Какой индекс нужно создать для максимально быстрой работы запроса (таблица users, условие WHERE age = 35 ORDER BY name)?

Для WHERE age = 35 ORDER BY name естественный кандидат — составной B-tree индекс (age, name). Он может отбирать возраст и выдавать подходящие строки в порядке имени.

Короткий ответ

Что ответить на собеседовании

Для WHERE age = 35 ORDER BY name естественный кандидат — составной B-tree индекс (age, name). Он может отбирать возраст и выдавать подходящие строки в порядке имени.

Подробный разбор

Ответ с пояснениями

Для WHERE age = 35 ORDER BY name естественный кандидат — составной B-tree индекс (age, name). Он может отбирать возраст и выдавать подходящие строки в порядке имени.

CREATE INDEX users_age_name_idx ON users (age, name);

Фактический выбор проверяют по плану: важны число строк, LIMIT, возвращаемые столбцы и статистика. Отдельные индексы по age и name не эквивалентны составному для этой задачи. Для устойчивой пагинации при одинаковом имени добавьте уникальный критерий в ORDER BY и при необходимости в индекс.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее