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>68.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="gist-intro.html" title="68.1. Introduction" /><link rel="next" href="gist-extensibility.html" title="68.3. Extensibility" /></head><body id="docContent" class="container-fluid col-10"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">68.2. Built-in Operator Classes</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="gist-intro.html" title="68.1. Introduction">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="gist.html" title="Chapter 68. GiST Indexes">Up</a></td><th width="60%" align="center">Chapter 68. GiST Indexes</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 16.2 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="gist-extensibility.html" title="68.3. Extensibility">Next</a></td></tr></table><hr /></div><div class="sect1" id="GIST-BUILTIN-OPCLASSES"><div class="titlepage"><div><div><h2 class="title" style="clear: both">68.2. Built-in Operator Classes <a href="#GIST-BUILTIN-OPCLASSES" class="id_link">#</a></h2></div></div></div><p>
The core <span class="productname">PostgreSQL</span> distribution
includes the <acronym class="acronym">GiST</acronym> operator classes shown in
<a class="xref" href="gist-builtin-opclasses.html#GIST-BUILTIN-OPCLASSES-TABLE" title="Table 68.1. Built-in GiST Operator Classes">Table 68.1</a>.
(Some of the optional modules described in <a class="xref" href="contrib.html" title="Appendix F. Additional Supplied Modules and Extensions">Appendix F</a>
provide additional <acronym class="acronym">GiST</acronym> operator classes.)
</p><div class="table" id="GIST-BUILTIN-OPCLASSES-TABLE"><p class="title"><strong>Table 68.1. Built-in <acronym class="acronym">GiST</acronym> Operator Classes</strong></p><div class="table-contents"><table class="table" summary="Built-in GiST Operator Classes" border="1"><colgroup><col class="col1" /><col class="col2" /><col class="col3" /></colgroup><thead><tr><th>Name</th><th>Indexable Operators</th><th>Ordering Operators</th></tr></thead><tbody><tr><td rowspan="14" valign="middle"><code class="literal">box_ops</code></td><td><code class="literal"><< (box, box)</code></td><td rowspan="14" 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><code class="literal">~ (box, box)</code></td></tr><tr><td><code class="literal">@ (box, box)</code></td></tr><tr><td rowspan="14" valign="middle"><code class="literal">circle_ops</code></td><td><code class="literal"><< (circle, circle)</code></td><td rowspan="14" valign="middle"><code class="literal"><-> (circle, point)</code></td></tr><tr><td><code class="literal">&< (circle, circle)</code></td></tr><tr><td><code class="literal">&> (circle, circle)</code></td></tr><tr><td><code class="literal">>> (circle, circle)</code></td></tr><tr><td><code class="literal"><@ (circle, circle)</code></td></tr><tr><td><code class="literal">@> (circle, circle)</code></td></tr><tr><td><code class="literal">~= (circle, circle)</code></td></tr><tr><td><code class="literal">&& (circle, circle)</code></td></tr><tr><td><code class="literal">|>> (circle, circle)</code></td></tr><tr><td><code class="literal"><<| (circle, circle)</code></td></tr><tr><td><code class="literal">&<| (circle, circle)</code></td></tr><tr><td><code class="literal">|&> (circle, circle)</code></td></tr><tr><td><code class="literal">@ (circle, circle)</code></td></tr><tr><td><code class="literal">~ (circle, circle)</code></td></tr><tr><td rowspan="11" valign="middle"><code class="literal">inet_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="18" valign="middle"><code class="literal">multirange_ops</code></td><td><code class="literal">= (anymultirange, anymultirange)</code></td><td rowspan="18" valign="middle"> </td></tr><tr><td><code class="literal">&& (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">&& (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal">@> (anymultirange, anyelement)</code></td></tr><tr><td><code class="literal">@> (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">@> (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal"><@ (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal"><@ (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal"><< (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal"><< (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal">>> (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">>> (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal">&< (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">&< (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal">&> (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">&> (anymultirange, anyrange)</code></td></tr><tr><td><code class="literal">-|- (anymultirange, anymultirange)</code></td></tr><tr><td><code class="literal">-|- (anymultirange, anyrange)</code></td></tr><tr><td rowspan="8" valign="middle"><code class="literal">point_ops</code></td><td><code class="literal">|>> (point, point)</code></td><td rowspan="8" 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><code class="literal"><@ (point, polygon)</code></td></tr><tr><td><code class="literal"><@ (point, circle)</code></td></tr><tr><td rowspan="14" valign="middle"><code class="literal">poly_ops</code></td><td><code class="literal"><< (polygon, polygon)</code></td><td rowspan="14" 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><code class="literal">@ (polygon, polygon)</code></td></tr><tr><td><code class="literal">~ (polygon, polygon)</code></td></tr><tr><td rowspan="18" valign="middle"><code class="literal">range_ops</code></td><td><code class="literal">= (anyrange, anyrange)</code></td><td rowspan="18" valign="middle"> </td></tr><tr><td><code class="literal">&& (anyrange, anyrange)</code></td></tr><tr><td><code class="literal">&& (anyrange, anymultirange)</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, anymultirange)</code></td></tr><tr><td><code class="literal"><@ (anyrange, anyrange)</code></td></tr><tr><td><code class="literal"><@ (anyrange, anymultirange)</code></td></tr><tr><td><code class="literal"><< (anyrange, anyrange)</code></td></tr><tr><td><code class="literal"><< (anyrange, anymultirange)</code></td></tr><tr><td><code class="literal">>> (anyrange, anyrange)</code></td></tr><tr><td><code class="literal">>> (anyrange, anymultirange)</code></td></tr><tr><td><code class="literal">&< (anyrange, anyrange)</code></td></tr><tr><td><code class="literal">&< (anyrange, anymultirange)</code></td></tr><tr><td><code class="literal">&> (anyrange, anyrange)</code></td></tr><tr><td><code class="literal">&> (anyrange, anymultirange)</code></td></tr><tr><td><code class="literal">-|- (anyrange, anyrange)</code></td></tr><tr><td><code class="literal">-|- (anyrange, anymultirange)</code></td></tr><tr><td rowspan="2" valign="middle"><code class="literal">tsquery_ops</code></td><td><code class="literal"><@ (tsquery, tsquery)</code></td><td rowspan="2" valign="middle"> </td></tr><tr><td><code class="literal">@> (tsquery, tsquery)</code></td></tr><tr><td valign="middle"><code class="literal">tsvector_ops</code></td><td><code class="literal">@@ (tsvector, tsquery)</code></td><td> </td></tr></tbody></table></div></div><br class="table-break" /><p>
For historical reasons, the <code class="literal">inet_ops</code> operator class is
not the default class for types <code class="type">inet</code> and <code class="type">cidr</code>.
To use it, mention the class name in <code class="command">CREATE INDEX</code>,
for example
</p><pre class="programlisting">
CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops);
</pre><p>
</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="gist-intro.html" title="68.1. Introduction">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="gist.html" title="Chapter 68. GiST Indexes">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="gist-extensibility.html" title="68.3. Extensibility">Next</a></td></tr><tr><td width="40%" align="left" valign="top">68.1. Introduction </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 16.2 Documentation">Home</a></td><td width="40%" align="right" valign="top"> 68.3. Extensibility</td></tr></table></div></body></html>
|