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

Какие знаешь индексы в PostgreSQL

PostgreSQL поддерживает несколько типов индексов, каждый оптимизирован под конкретные сценарии:

  1. B-tree — стандартный индекс для сравнений (=, >, <, BETWEEN). Подходит для большинства случаев.
  2. Hash — быстрый поиск по точному совпадению (=), но не поддерживает сортировку и диапазоны. Не транзакционно безопасен до PG 10.
  3. GIN (Generalized Inverted Index) — для составных значений (массивы, JSON, полнотекстовый поиск).
  4. GiST (Generalized Search Tree) — для геоданных, полнотекстового поиска и других сложных типов.
  5. SP-GiST (Space-Partitioned GiST) — для нерегулярных структур (IP-адреса, геоданные).
  6. BRIN (Block Range INdex) — для больших таблиц с коррелированными данными (например, временные ряды).

Пример создания индекса:

sql
-- B-tree индекс
CREATE INDEX idx_users_email ON users(email);

-- GIN индекс для массива
CREATE INDEX idx_products_tags ON products USING GIN(tags);
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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