Встроенные классы операторов
note
Эта страница переведена при помощи нейросети GigaChat.
Основной дистрибутив PostgreSQL включает классы операторов GiST, показанные в таблице ниже.
| Имя | Индексируемые операторы | Операторы упорядочивания |
|---|---|---|
| box_ops | << (box, box) | <-> (box, point) |
| &< (box, box) | ||
| && (box, box) | ||
| &> (box, box) | ||
| >> (box, box) | ||
| ~= (box, box) | ||
| @> (box, box) | ||
| <@ (box, box) | ||
| &<| (box, box) | ||
| <<| (box, box) | ||
| |>> (box, box) | ||
| |&> (box, box) | ||
| ~ (box, box) | ||
| @ (box, box) | ||
| circle_ops | << (circle, circle) | <-> (circle, point) |
| &< (circle, circle) | ||
| &> (circle, circle) | ||
| >> (circle, circle) | ||
| <@ (circle, circle) | ||
| @> (circle, circle) | ||
| ~= (circle, circle) | ||
| && (circle, circle) | ||
| |>> (circle, circle) | ||
| <<| (circle, circle) | ||
| &<| (circle, circle) | ||
| |&> (circle, circle) | ||
| @ (circle, circle) | ||
| ~ (circle, circle) | ||
| inet_ops | << (inet, inet) | |
| <<= (inet, inet) | ||
| >> (inet, inet) | ||
| >>= (inet, inet) | ||
| = (inet, inet) | ||
| <> (inet, inet) | ||
| < (inet, inet) | ||
| <= (inet, inet) | ||
| > (inet, inet) | ||
| >= (inet, inet) | ||
| && (inet, inet) | ||
| multirange_ops | = (anymultirange, anymulti- range) | |
| && (anymultirange, anymulti- range) | ||
| && (anymultirange, anyrange) | ||
| @> (anymultirange, anyele- ment) | ||
| @> (anymultirange, anymulti- range) | ||
| @> (anymultirange, anyrange) | ||
| <@ (anymultirange, anymulti- range) | ||
| <@ (anymultirange, anyrange) | ||
| << (anymultirange, anymulti- range) | ||
| << (anymultirange, anyrange) | ||
| >> (anymultirange, anymulti- range) | ||
| >> (anymultirange, anyrange) | ||
| &< (anymultirange, anymulti- range) | ||
| &< (anymultirange, anyrange) | ||
| &> (anymultirange, anymulti- range) | ||
| &> (anymultirange, anyrange) | ||
| -|- (anymultirange, anymul- tirange) | ||
| -|- (anymultirange, anyrange) | ||
| point_ops | |>> (point, point) | <-> (point, point) |
| << (point, point) | ||
| >> (point, point) | ||
| <<| (point, point) | ||
| ~= (point, point) | ||
| <@ (point, box) | ||
| <@ (point, polygon) | ||
| <@ (point, circle) | ||
| поли_опы | << (polygon, polygon) | <-> (polygon, point) |
| &< (polygon, polygon) | ||
| &> (polygon, polygon) | ||
| >> (polygon, polygon) | ||
| <@ (polygon, polygon) | ||
| @> (polygon, polygon) | ||
| ~= (polygon, polygon) | ||
| && (polygon, polygon) | ||
| <<| (polygon, polygon) | ||
| &<| (polygon, polygon) | ||
| |&> (polygon, polygon) | ||
| |>> (polygon, polygon) | ||
| @ (polygon, polygon) | ||
| ~ (polygon, polygon) | ||
| range_ops | = (anyrange, anyrange) | |
| && (anyrange, anyrange) | ||
| && (anyrange, anymultirange) | ||
| @> (anyrange, anyelement) | ||
| @> (anyrange, anyrange) | ||
| @> (anyrange, anymultirange) | ||
| <@ (anyrange, anyrange) | ||
| <@ (anyrange, anymultirange) | ||
| << (anyrange, anyrange) | ||
| << (anyrange, anymultirange) | ||
| >> (anyrange, anyrange) | ||
| >> (anyrange, anymultirange) | ||
| &< (anyrange, anyrange) | ||
| &< (anyrange, anymultirange) | ||
| &> (anyrange, anyrange) | ||
| &> (anyrange, anymultirange) | ||
| -|- (anyrange, anyrange) | ||
| -|- (anyrange, anymulti- range) | ||
| tsquery_ops | <@ (tsquery, tsquery) | |
| @> (tsquery, tsquery) | ||
| tsvector_ops | @@ (tsvector, tsquery) |
По историческим причинам класс операторов inet_ops не является классом по умолчанию для типов inet и cidr. Чтобы использовать его, укажите имя класса в CREATE INDEX, например:
CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops);