Расширения - btree_gist 

Page / - Изменено Alexandr Fokin в 2024/04/20 22:23 

btree_gist 
Изменено Alexandr Fokin
в 2024/04/20 22:23

Оглавление

 	btree_gist
https://www.postgresql.org/docs/13/btree-gist.html	
 	PostgreSQL. Индексы	
 	Позволяет делать индексы и ограничения (Constraint), комбинирующее внутри себя выражения на основе btree и gist индексов.	
Ограничение уникальности	ALTER TABLE <tableName> 
 ADD CONSTRAINT <constraintName>
    EXCLUDE USING gist
    ( 
   <btreeColumnNName> WITH =, -- Указываем столбец для btree индекса
   <rangeColumnNName> WITH && -- Указываем столбец для gist индекса
   )
  WHERE(not lower_inf(<rangeColumnNName>)) -- Пример фильтрующий индекс / ограничение
  
ALTER TABLE <tableName> 
 ADD CONSTRAINT <constraintName>
    EXCLUDE USING gist
    ( 
   <btreeColumnNName> WITH =, -- Указываем столбец для btree индекса
   tstzrange(<startDateColumn>, <endDateColumn>, '[]') WITH && -- Указываем вычисляемое поле на основе столбцов
   )
  WHERE(<startDateColumn> IS NOT NULL) -- Пример фильтрующий индекс / ограничение

Индекс	CREATE INDEX <indexName>
 ON <tableName>
 USING GIST (<btreeColumnNName>, <rangeColumnNName>)
 -- <Where block>
;	

Внутренние ссылки:
Дочерние страницы:
Обратные ссылки:
•	Даты и диапазоны