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

Как применяются разные типы индексов в БД

Индексы в БД ускоряют поиск и сортировку данных. Основные типы:

B-дерево (B-tree) – стандартный индекс, подходит для большинства операций (сравнение, диапазоны, сортировка). Пример:

sql
CREATE INDEX idx_name ON users(name);  -- Поиск по имени

Хеш-индекс – быстрый поиск точного совпадения (не поддерживает диапазоны):

sql
-- В PostgreSQL
CREATE INDEX idx_email_hash ON users USING HASH(email);

Составной индекс – для нескольких полей (важен порядок):

sql
CREATE INDEX idx_name_age ON users(name, age);  -- WHERE name='x' AND age>20

Полнотекстовый (GIN/GiST) – для текстового поиска:

sql
CREATE INDEX idx_fts ON articles USING GIN(to_tsvector('english', content));

Частичный индекс – только для подмножества данных:

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

Выбор зависит от запросов: B-tree – универсальный, хеш – для точных match, GIN – для сложного поиска в тексте.

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

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

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

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