Sobes.tech
Back to questions
Intern
12

Какие индексы есть в PostgreSQL?

Companies where asked
Adapty

Answer from AI

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);

Выбор типа индекса зависит от типа данных и характера запросов.