The core PostgreSQL distribution includes the SP-GiST operator classes shown in Table 65.1.
Table 65.1. Built-in SP-GiST Operator Classes
Name | Indexed Data Type | Indexable Operators | Ordering Operators |
---|---|---|---|
kd_point_ops |
point |
<< <@ <^ >> >^ ~= |
<-> |
quad_point_ops |
point |
<< <@ <^ >> >^ ~= |
<-> |
range_ops |
any range type | && &< &> -|- << <@ = >> @> |
|
box_ops |
box |
<< &< && &> >> ~= @> <@ &<| <<| |>> |&> |
|
poly_ops |
polygon |
<< &< && &> >> ~= @> <@ &<| <<| |>> |&> |
<-> |
text_ops |
text |
< <= = > >= ~<=~ ~<~ ~>=~ ~>~ ^@ |
|
inet_ops |
inet , cidr |
&& >> >>= > >= <> << <<= < <= = |
Of the two operator classes for type point
, quad_point_ops
is the default. kd_point_ops
supports the same operators but uses a different index data structure that may offer better performance in some applications.
The quad_point_ops
, kd_point_ops
and poly_ops
operator classes support the <->
ordering operator, which enables the k-nearest neighbor (k-NN
) search over indexed point or polygon data sets.