Junior — Middle
¿Se puede crear un índice en la base de datos basado en condiciones o filtros específicos?
sobes.tech AI
Respuesta de la IA
Да, в некоторых системах управления базами данных можно создавать индекс с условием или фильтром — такие индексы называются частичными (partial index) или фильтрованными (filtered index).
Они индексируют только те строки, которые удовлетворяют заданному условию, что позволяет уменьшить размер индекса и повысить производительность запросов, которые используют это условие.
Пример для PostgreSQL:
CREATE INDEX idx_active_users ON users (last_login) WHERE active = true;
Этот индекс будет содержать только записи пользователей с активным статусом.
В SQL Server аналогично:
CREATE INDEX idx_filtered ON users (last_login) WHERE active = 1;
Важно проверить, поддерживает ли конкретная СУБД такую возможность.