LINUX.ORG.RU

Создать составной индекс по bigint и int[]

 ,


0

1

Использую СУБД Postgresql. Есть поле Document (bigint) ид. документа Types (int[]) массив целых числе. Для запроса вида

Select *
From "Data"
where "Document" = 1 and ("Types" && array[1, 2])

Select *
From "Data"
where "Document" = 1 and "Types"[1] =1
union
Select *
From "Data"
where "Document" = 1 and "Types"[1] = 2
Select *
From "Data"
where "Document" = 1 and ("Types"[1] = 1 or "Types"[1] = 2)

Хочется сделать составной индекс по Document и Types, как лучше сделать такой индекс, и вообще можно такое сделать?