В базовый дистрибутив PostgreSQL включены классы операторов GiST, перечисленные в Таблице 64.1. (Некоторые дополнительные модули, описанные в Приложении F, добавляют другие классы операторов GiST.)
Таблица 64.1. Встроенные классы операторов GiST
Имя | Индексируемый тип данных | Индексируемые операторы | Операторы упорядочивания |
---|---|---|---|
box_ops | box |
&&
&>
&<
&<|
>>
<<
<<|
<@
@>
@
|&>
|>>
~
~=
|
<->
|
circle_ops | circle |
&&
&>
&<
&<|
>>
<<
<<|
<@
@>
@
|&>
|>>
~
~=
|
<->
|
inet_ops | inet , cidr |
&&
>>
>>=
>
>=
<>
<<
<<=
<
<=
=
| |
point_ops | point |
>>
>^
<<
<@
<@
<@
<^
~=
|
<->
|
poly_ops | polygon |
&&
&>
&<
&<|
>>
<<
<<|
<@
@>
@
|&>
|>>
~
~=
|
<->
|
range_ops | любой тип диапазона |
&&
&>
&<
>>
<<
<@
-|-
=
@>
@>
| |
tsquery_ops | tsquery |
<@
@>
| |
tsvector_ops | tsvector |
@@
|
По историческим причинам класс операторов inet_ops
не является классом по умолчанию для типов inet
и cidr
. Чтобы использовать его, укажите имя класса в CREATE INDEX
, например:
CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops);