1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>66.2. Built-in Operator Classes</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="prev" href="spgist-intro.html" title="66.1. Introduction" /><link rel="next" href="spgist-extensibility.html" title="66.3. Extensibility" /></head><body id="docContent" class="container-fluid col-10"><div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">66.2. Built-in Operator Classes</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="spgist-intro.html" title="66.1. Introduction">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="spgist.html" title="Chapter 66. SP-GiST Indexes">Up</a></td><th width="60%" align="center">Chapter 66. SP-GiST Indexes</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 14.5 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="spgist-extensibility.html" title="66.3. Extensibility">Next</a></td></tr></table><hr></hr></div><div class="sect1" id="SPGIST-BUILTIN-OPCLASSES"><div class="titlepage"><div><div><h2 class="title" style="clear: both">66.2. Built-in Operator Classes</h2></div></div></div><p>
The core <span class="productname">PostgreSQL</span> distribution
includes the <acronym class="acronym">SP-GiST</acronym> operator classes shown in
<a class="xref" href="spgist-builtin-opclasses.html#SPGIST-BUILTIN-OPCLASSES-TABLE" title="Table 66.1. Built-in SP-GiST Operator Classes">Table 66.1</a>.
</p><div class="table" id="SPGIST-BUILTIN-OPCLASSES-TABLE"><p class="title"><strong>Table 66.1. Built-in <acronym class="acronym">SP-GiST</acronym> Operator Classes</strong></p><div class="table-contents"><table class="table" summary="Built-in SP-GiST Operator Classes" border="1"><colgroup><col /><col /><col /></colgroup><thead><tr><th>Name</th><th>Indexable Operators</th><th>Ordering Operators</th></tr></thead><tbody><tr><td rowspan="12" valign="middle"><code class="literal">box_ops</code></td><td><code class="literal"><< (box,box)</code></td><td rowspan="12" valign="middle"><code class="literal"><-> (box,point)</code></td></tr><tr><td><code class="literal">&< (box,box)</code></td></tr><tr><td><code class="literal">&> (box,box)</code></td></tr><tr><td><code class="literal">>> (box,box)</code></td></tr><tr><td><code class="literal"><@ (box,box)</code></td></tr><tr><td><code class="literal">@> (box,box)</code></td></tr><tr><td><code class="literal">~= (box,box)</code></td></tr><tr><td><code class="literal">&& (box,box)</code></td></tr><tr><td><code class="literal"><<| (box,box)</code></td></tr><tr><td><code class="literal">&<| (box,box)</code></td></tr><tr><td><code class="literal">|&> (box,box)</code></td></tr><tr><td><code class="literal">|>> (box,box)</code></td></tr><tr><td rowspan="6" valign="middle"><code class="literal">kd_point_ops</code></td><td><code class="literal">|>> (point,point)</code></td><td rowspan="6" valign="middle"><code class="literal"><-> (point,point)</code></td></tr><tr><td><code class="literal"><< (point,point)</code></td></tr><tr><td><code class="literal">>> (point,point)</code></td></tr><tr><td><code class="literal"><<| (point,point)</code></td></tr><tr><td><code class="literal">~= (point,point)</code></td></tr><tr><td><code class="literal"><@ (point,box)</code></td></tr><tr><td rowspan="11" valign="middle"><code class="literal">network_ops</code></td><td><code class="literal"><< (inet,inet)</code></td><td rowspan="11" valign="middle"> </td></tr><tr><td><code class="literal"><<= (inet,inet)</code></td></tr><tr><td><code class="literal">>> (inet,inet)</code></td></tr><tr><td><code class="literal">>>= (inet,inet)</code></td></tr><tr><td><code class="literal">= (inet,inet)</code></td></tr><tr><td><code class="literal"><> (inet,inet)</code></td></tr><tr><td><code class="literal">< (inet,inet)</code></td></tr><tr><td><code class="literal"><= (inet,inet)</code></td></tr><tr><td><code class="literal">> (inet,inet)</code></td></tr><tr><td><code class="literal">>= (inet,inet)</code></td></tr><tr><td><code class="literal">&& (inet,inet)</code></td></tr><tr><td rowspan="12" valign="middle"><code class="literal">poly_ops</code></td><td><code class="literal"><< (polygon,polygon)</code></td><td rowspan="12" valign="middle"><code class="literal"><-> (polygon,point)</code></td></tr><tr><td><code class="literal">&< (polygon,polygon)</code></td></tr><tr><td><code class="literal">&> (polygon,polygon)</code></td></tr><tr><td><code class="literal">>> (polygon,polygon)</code></td></tr><tr><td><code class="literal"><@ (polygon,polygon)</code></td></tr><tr><td><code class="literal">@> (polygon,polygon)</code></td></tr><tr><td><code class="literal">~= (polygon,polygon)</code></td></tr><tr><td><code class="literal">&& (polygon,polygon)</code></td></tr><tr><td><code class="literal"><<| (polygon,polygon)</code></td></tr><tr><td><code class="literal">&<| (polygon,polygon)</code></td></tr><tr><td><code class="literal">|>> (polygon,polygon)</code></td></tr><tr><td><code class="literal">|&> (polygon,polygon)</code></td></tr><tr><td rowspan="6" valign="middle"><code class="literal">quad_point_ops</code></td><td><code class="literal">|>> (point,point)</code></td><td rowspan="6" valign="middle"><code class="literal"><-> (point,point)</code></td></tr><tr><td><code class="literal"><< (point,point)</code></td></tr><tr><td><code class="literal">>> (point,point)</code></td></tr><tr><td><code class="literal"><<| (point,point)</code></td></tr><tr><td><code class="literal">~= (point,point)</code></td></tr><tr><td><code class="literal"><@ (point,box)</code></td></tr><tr><td rowspan="10" valign="middle"><code class="literal">range_ops</code></td><td><code class="literal">= (anyrange,anyrange)</code></td><td rowspan="10" valign="middle"> </td></tr><tr><td><code class="literal">&& (anyrange,anyrange)</code></td></tr><tr><td><code class="literal">@> (anyrange,anyelement)</code></td></tr><tr><td><code class="literal">@> (anyrange,anyrange)</code></td></tr><tr><td><code class="literal"><@ (anyrange,anyrange)</code></td></tr><tr><td><code class="literal"><< (anyrange,anyrange)</code></td></tr><tr><td><code class="literal">>> (anyrange,anyrange)</code></td></tr><tr><td><code class="literal">&< (anyrange,anyrange)</code></td></tr><tr><td><code class="literal">&> (anyrange,anyrange)</code></td></tr><tr><td><code class="literal">-|- (anyrange,anyrange)</code></td></tr><tr><td rowspan="10" valign="middle"><code class="literal">text_ops</code></td><td><code class="literal">= (text,text)</code></td><td rowspan="10" valign="middle"> </td></tr><tr><td><code class="literal">< (text,text)</code></td></tr><tr><td><code class="literal"><= (text,text)</code></td></tr><tr><td><code class="literal">> (text,text)</code></td></tr><tr><td><code class="literal">>= (text,text)</code></td></tr><tr><td><code class="literal">~<~ (text,text)</code></td></tr><tr><td><code class="literal">~<=~ (text,text)</code></td></tr><tr><td><code class="literal">~>=~ (text,text)</code></td></tr><tr><td><code class="literal">~>~ (text,text)</code></td></tr><tr><td><code class="literal">^@ (text,text)</code></td></tr></tbody></table></div></div><br class="table-break" /><p>
Of the two operator classes for type <code class="type">point</code>,
<code class="literal">quad_point_ops</code> is the default. <code class="literal">kd_point_ops</code>
supports the same operators but uses a different index data structure that
may offer better performance in some applications.
</p><p>
The <code class="literal">quad_point_ops</code>, <code class="literal">kd_point_ops</code> and
<code class="literal">poly_ops</code> operator classes support the <code class="literal"><-></code>
ordering operator, which enables the k-nearest neighbor (<code class="literal">k-NN</code>)
search over indexed point or polygon data sets.
</p></div><div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navfooter"><hr></hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="spgist-intro.html" title="66.1. Introduction">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spgist.html" title="Chapter 66. SP-GiST Indexes">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="spgist-extensibility.html" title="66.3. Extensibility">Next</a></td></tr><tr><td width="40%" align="left" valign="top">66.1. Introduction </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 14.5 Documentation">Home</a></td><td width="40%" align="right" valign="top"> 66.3. Extensibility</td></tr></table></div></body></html>
|