Назад к вопросам
Intern
13
Какие индексы есть в PostgreSQL?
Компании, где спрашивали
Adapty
Ответ от нейросети
sobes.tech AI
В PostgreSQL доступны различные типы индексов, которые позволяют оптимизировать поиск и сортировку данных:
- B-tree (по умолчанию) — подходит для большинства операций сравнения (=, <, <=, >, >=).
- Hash — эффективен для операций равенства, но менее универсален.
- GIN (Generalized Inverted Index) — используется для индексации массивов, JSON, полнотекстового поиска.
- GiST (Generalized Search Tree) — поддерживает сложные структуры данных, например, геометрические объекты.
- SP-GiST — специализированный GiST для определённых типов данных.
- BRIN (Block Range Index) — эффективен для очень больших таблиц с упорядоченными данными.
Пример создания B-tree индекса:
CREATE INDEX idx_users_lastname ON users(lastname);
Выбор типа индекса зависит от типа данных и характера запросов.