Что такое индекс с условием в БД
Python
Middle
Без компании
Что такое индекс с условием в БД
Ответы
Индекс с условием (частичный индекс) — это индекс, который создаётся только для строк, удовлетворяющих определённому условию. Он уменьшает размер индекса и ускоряет запросы, фильтрующие данные по этому условию.
Пример в PostgreSQL:
```
CREATE INDEX idx_active_users ON users (email) WHERE is_active = true;
```
Такой индекс будет содержать только активных пользователей, что полезно для часто используемых запросов типа:
```
SELECT * FROM users WHERE is_active = true AND email LIKE 'a%';
```
Преимущества:
- Меньший размер индекса
- Быстрое выполнение запросов с условием индекса
- Экономия ресурсов при вставке/обновлении (индексируются только подходящие строки)
Ограничения:
- Поддерживается не всеми СУБД (например, MySQL не поддерживает)
- Условие должно точно совпадать в запросе для использования индекса