Перейти к основному содержимому

Встроенные классы операторов

примечание

Эта страница переведена при помощи нейросети GigaChat.

Основной дистрибутив PostgreSQL включает классы операторов GiST, показанные в таблице ниже.

ИмяИндексируемые операторыОператоры упорядочивания
box_ops< < (box, box)< -> (box, point)
box_ops&< (box, box)
box_ops&& (box, box)
box_ops&> (box, box)
box_ops> > (box, box)
box_ops~= (box, box)
box_ops@> (box, box)
box_ops<@ (box, box)
box_ops&< | (box, box)
box_ops< < | (box, box)
box_ops| > > (box, box)
box_ops|&> (box, box)
box_ops~ (box, box)
box_ops@ (box, box)
circle_ops< < (circle, circle)< -> (circle, point)
circle_ops&< (circle, circle)
circle_ops&> (circle, circle)
circle_ops> > (circle, circle)
circle_ops<@ (circle, circle)
circle_ops@> (circle, circle)
circle_ops~= (circle, circle)
circle_ops&& (circle, circle)
circle_ops| > > (circle, circle)
circle_ops< < | (circle, circle)
circle_ops&< | (circle, circle)
circle_ops|&> (circle, circle)
circle_ops@ (circle, circle)
circle_ops~ (circle, circle)
inet_ops< < (inet, inet)
inet_ops< <= (inet, inet)
inet_ops> > (inet, inet)
inet_ops> >= (inet, inet)
inet_ops= (inet, inet)
inet_ops<> (inet, inet)
inet_ops< (inet, inet)
inet_ops<= (inet, inet)
inet_ops> (inet, inet)
inet_ops>= (inet, inet)
inet_ops&& (inet, inet)
multirange_ops= (anymultirange, anymultirange)
multirange_ops&& (anymultirange, anymultirange)
multirange_ops&& (anymultirange, anyrange)
multirange_ops@> (anymultirange, anyelement)
multirange_ops@> (anymultirange, anymultirange)
multirange_ops@> (anymultirange, anyrange)
multirange_ops<@ (anymultirange, anymultirange)
multirange_ops<@ (anymultirange, anyrange)
multirange_ops< < (anymultirange, anymultirange)
multirange_ops< < (anymultirange, anyrange)
multirange_ops> > (anymultirange, anymultirange)
multirange_ops> > (anymultirange, anyrange)
multirange_ops&< (anymultirange, anymultirange)
multirange_ops&< (anymultirange, anyrange)
multirange_ops&> (anymultirange, anymultirange)
multirange_ops&> (anymultirange, anyrange)
multirange_ops-|- (anymultirange, anymultirange)
multirange_ops-|- (anymultirange, anyrange)
point_ops| > > (point, point)<-> (point, point)
point_ops< < (point, point)
point_ops> > (point, point)
point_ops< < | (point, point)
point_ops~= (point, point)
point_ops<@ (point, box)
point_ops<@ (point, polygon)
point_ops<@ (point, circle)
poly_ops< < (polygon, polygon)<-> (polygon, point)
poly_ops&< (polygon, polygon)
poly_ops&> (polygon, polygon)
poly_ops> > (polygon, polygon)
poly_ops<@ (polygon, polygon)
poly_ops@> (polygon, polygon)
poly_ops~= (polygon, polygon)
poly_ops&& (polygon, polygon)
poly_ops< < | (polygon, polygon)
poly_ops&< | (polygon, polygon)
poly_ops|&> (polygon, polygon)
poly_ops| > > (polygon, polygon)
poly_ops@ (polygon, polygon)
poly_ops~ (polygon, polygon)
range_ops= (anyrange, anyrange)
range_ops&& (anyrange, anyrange)
range_ops&& (anyrange, anymultirange)
range_ops@> (anyrange, anyelement)
range_ops@> (anyrange, anyrange)
range_ops@> (anyrange, anymultirange)
range_ops<@ (anyrange, anyrange)
range_ops<@ (anyrange, anymultirange)
range_ops< < (anyrange, anyrange)
range_ops< < (anyrange, anymultirange)
range_ops> > (anyrange, anyrange)
range_ops> > (anyrange, anymultirange)
range_ops&< (anyrange, anyrange)
range_ops&< (anyrange, anymultirange)
range_ops&> (anyrange, anyrange)
range_ops&> (anyrange, anymultirange)
range_ops-|- (anyrange, anyrange)
range_ops-|- (anyrange, anymultirange)
tsquery_ops<@ (tsquery, tsquery)
tsquery_ops@> (tsquery, tsquery)
tsvector_ops@@ (tsvector, tsquery)

По историческим причинам класс операторов inet_ops не является классом по умолчанию для типов inet и cidr. Чтобы использовать его, укажите имя класса в CREATE INDEX, например:

CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops);