69.2. Built-in Operator Classes
Prev | Up | Chapter 69. SP-GiST Indexes | Home | Next

## 69.2. Built-in Operator Classes #

The core PostgreSQL distribution includes the SP-GiST operator classes shown in Table 69.1.

Table 69.1. Built-in SP-GiST Operator Classes

Name | Indexable Operators | Ordering Operators
--- | --- | ---
`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)`
`inet_ops` | `<< (inet,inet)` |
`<<= (inet,inet)`
`>> (inet,inet)`
`>>= (inet,inet)`
`= (inet,inet)`
`<> (inet,inet)`
`< (inet,inet)`
`<= (inet,inet)`
`> (inet,inet)`
`>= (inet,inet)`
`&& (inet,inet)`
`kd_point_ops` | `|>> (point,point)` | `<-> (point,point)`
`<< (point,point)`
`>> (point,point)`
`<<| (point,point)`
`~= (point,point)`
`<@ (point,box)`
`poly_ops` | `<< (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)`
`quad_point_ops` | `|>> (point,point)` | `<-> (point,point)`
`<< (point,point)`
`>> (point,point)`
`<<| (point,point)`
`~= (point,point)`
`<@ (point,box)`
`range_ops` | `= (anyrange,anyrange)` |
`&& (anyrange,anyrange)`
`@> (anyrange,anyelement)`
`@> (anyrange,anyrange)`
`<@ (anyrange,anyrange)`
`<< (anyrange,anyrange)`
`>> (anyrange,anyrange)`
`&< (anyrange,anyrange)`
`&> (anyrange,anyrange)`
`-|- (anyrange,anyrange)`
`text_ops` | `= (text,text)` |
`< (text,text)`
`<= (text,text)`
`> (text,text)`
`>= (text,text)`
`~<~ (text,text)`
`~<=~ (text,text)`
`~>=~ (text,text)`
`~>~ (text,text)`
`^@ (text,text)`

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.

Prev | Up | Next
69.1. Introduction | Home | 69.3. Extensibility