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

Можно ли сделать индекс по условию в БД

Да, в большинстве современных БД можно создать частичный (условный) индекс, который включает только строки, удовлетворяющие определенному условию. Это экономит место и ускоряет запросы, фильтруемые по этому условию.

Пример в PostgreSQL:

sql
CREATE INDEX idx_active_users ON users(email) WHERE is_active = true;

В Oracle используется CREATE INDEX ... WHERE, в MySQL 8+ – аналогично PostgreSQL. SQLite также поддерживает условные индексы.

Важно: условие должно быть детерминированным (не зависеть от изменяющихся данных). Такие индексы особенно полезны для часто запрашиваемых подмножеств данных.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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