Back to questions
Middle+
3
Расскажи про индексы в PostgreSQL — какие бывают, составной индекс и порядок столбцов.
Companies where asked
Веро Трейс
Answer from AI
sobes.tech AI
В PostgreSQL есть несколько типов индексов, наиболее распространённые:
- B-tree — стандартный индекс для быстрого поиска по равенству и диапазонам.
- Hash — индекс для быстрого поиска по равенству (редко используется).
- GIN и GiST — для полнотекстового поиска, геоданных и других специализированных данных.
Составной индекс создаётся по нескольким столбцам, например:
CREATE INDEX idx_name ON table_name (col1, col2);
Порядок столбцов в составном индексе важен: индекс эффективен для запросов, которые фильтруют или сортируют по первому столбцу, затем по второму и так далее. Если запрос использует только второй столбец, индекс может не использоваться.
Например, индекс по (col1, col2) хорошо подходит для запросов с условием по col1 или по col1 и col2, но не для запросов только по col2.