pg.ddx.io  pgsql-docs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Bruce Momjian <bruce@momjian.us>
Cc: osdba <mailtch@163.com>
Cc: pgsql-docs@postgresql.org
Cc: jkatz@postgresql.org
Subject: Re: Document "59.2. Built-in Operator Classes" have a clerical error?
Date: Thu, 27 Aug 2020 15:33:22 +0900
Message-ID: <20200827063126.GO2017@paquier.xyz> (raw)
In-Reply-To: <2985974.1598483949@sss.pgh.pa.us>
References: <20200826225837.GA3099@alvherre.pgsql>
	<2985974.1598483949@sss.pgh.pa.us>

On Wed, Aug 26, 2020 at 07:19:09PM -0400, Tom Lane wrote:
> With one eye on the PDF width issue, I propose that we not draw
> the distinction, but just list all the relevant operators for each
> opclass (its native ones, plus the applicable "loose" operators).
> Then we only need two columns, opclass and operators.

Indeed, removing the types makes sense if we list them with the
operators.  I have been looking at your suggestions, and adding a
space before the first parenthesis where the types are listed sounds
good to me, but I am not sure that it is a good idea to add spaces
between each type.  Looking at the pdf produced, I think that we
should also drop entirely colspec for the BRIN table as it gets much
small in width once the data type column is removed.  I also looked at
rowsep for the PDF, and I tend to prefer the version where we separate
each cell for the operator, as a matter of readability.

This leads me to the updated version attached.  BRIN has 29 different
opclasses, visibly.
--
Michael

Attachments:

doc-builtin-ops-v2.patch (text/x-diff, 46.6K) download diff --git a/doc/src/sgml/brin.sgml b/doc/src/sgml/brin.sgml index b9d596e3c4..c3298ed92b 100644 --- a/doc/src/sgml/brin.sgml +++ b/doc/src/sgml/brin.sgml @@ -120,354 +120,293 @@ LOG: request for BRIN range summarization for index "brin_wi_idx" page 128 was <table id="brin-builtin-opclasses-table"> <title>Built-in <acronym>BRIN</acronym> Operator Classes</title> - <tgroup cols="3"> - <colspec colname="col1" colwidth="2*"/> - <colspec colname="col2" colwidth="2*"/> - <colspec colname="col3" colwidth="1*"/> + <tgroup cols="2"> <thead> <row> <entry>Name</entry> - <entry>Indexed Data Type</entry> <entry>Indexable Operators</entry> </row> </thead> <tbody> <row> - <entry><literal>int8_minmax_ops</literal></entry> - <entry><type>bigint</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="13"><literal>range_inclusion_ops</literal></entry> + <entry><literal>= (anyrange,anyrange)</literal></entry> </row> + <row><entry><literal>&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;= (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&gt;= (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&amp; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyelement)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;@ (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&gt;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>-|- (anyrange,anyrange)</literal></entry></row> + <row> - <entry><literal>bit_minmax_ops</literal></entry> - <entry><type>bit</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>bit_minmax_ops</literal></entry> + <entry><literal>= (bit,bit)</literal></entry> </row> + <row><entry><literal>&lt; (bit,bit)</literal></entry></row> + <row><entry><literal>&gt; (bit,bit)</literal></entry></row> + <row><entry><literal>&lt;= (bit,bit)</literal></entry></row> + <row><entry><literal>&gt;= (bit,bit)</literal></entry></row> + <row> - <entry><literal>varbit_minmax_ops</literal></entry> - <entry><type>bit varying</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>varbit_minmax_ops</literal></entry> + <entry><literal>= (varbit,varbit)</literal></entry> </row> + <row><entry><literal>&lt; (varbit,varbit)</literal></entry></row> + <row><entry><literal>&gt; (varbit,varbit)</literal></entry></row> + <row><entry><literal>&lt;= (varbit,varbit)</literal></entry></row> + <row><entry><literal>&gt;= (varbit,varbit)</literal></entry></row> + <row> - <entry><literal>box_inclusion_ops</literal></entry> - <entry><type>box</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&gt;&gt;</literal> - <literal>~=</literal> - <literal>@&gt;</literal> - <literal>&lt;@</literal> - <literal>&amp;&lt;|</literal> - <literal>&lt;&lt;|</literal> - <literal>|&gt;&gt;</literal> - <literal>|&amp;&gt;</literal> - </entry> + <entry morerows="12"><literal>box_inclusion_ops</literal></entry> + <entry><literal>@&gt; (box,point)</literal></entry> </row> + <row><entry><literal>&lt;&lt; (box,box)</literal></entry></row> + <row><entry><literal>&amp;&lt; (box,box)</literal></entry></row> + <row><entry><literal>&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>&gt;&gt; (box,box)</literal></entry></row> + <row><entry><literal>&lt;@ (box,box)</literal></entry></row> + <row><entry><literal>@&gt; (box,box)</literal></entry></row> + <row><entry><literal>~= (box,box)</literal></entry></row> + <row><entry><literal>&amp;&amp; (box,box)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (box,box)</literal></entry></row> + <row> - <entry><literal>bytea_minmax_ops</literal></entry> - <entry><type>bytea</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>bpchar_minmax_ops</literal></entry> + <entry><literal>= (character,character)</literal></entry> </row> + <row><entry><literal>&lt; (character,character)</literal></entry></row> + <row><entry><literal>&lt;= (character,character)</literal></entry></row> + <row><entry><literal>&gt; (character,character)</literal></entry></row> + <row><entry><literal>&gt;= (character,character)</literal></entry></row> + <row> - <entry><literal>bpchar_minmax_ops</literal></entry> - <entry><type>character</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>bytea_minmax_ops</literal></entry> + <entry><literal>= (bytea,bytea)</literal></entry> </row> + <row><entry><literal>&lt; (bytea,bytea)</literal></entry></row> + <row><entry><literal>&lt;= (bytea,bytea)</literal></entry></row> + <row><entry><literal>&gt; (bytea,bytea)</literal></entry></row> + <row><entry><literal>&gt;= (bytea,bytea)</literal></entry></row> + <row> - <entry><literal>char_minmax_ops</literal></entry> - <entry><type>"char"</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>char_minmax_ops</literal></entry> + <entry><literal>= ("char","char")</literal></entry> </row> + <row><entry><literal>&lt; ("char","char")</literal></entry></row> + <row><entry><literal>&lt;= ("char","char")</literal></entry></row> + <row><entry><literal>&gt; ("char","char")</literal></entry></row> + <row><entry><literal>&gt;= ("char","char")</literal></entry></row> + <row> - <entry><literal>date_minmax_ops</literal></entry> - <entry><type>date</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>date_minmax_ops</literal></entry> + <entry><literal>= (date,date)</literal></entry> </row> + <row><entry><literal>&lt; (date,date)</literal></entry></row> + <row><entry><literal>&lt;= (date,date)</literal></entry></row> + <row><entry><literal>&gt; (date,date)</literal></entry></row> + <row><entry><literal>&gt;= (date,date)</literal></entry></row> + <row> - <entry><literal>float8_minmax_ops</literal></entry> - <entry><type>double precision</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>float4_minmax_ops</literal></entry> + <entry><literal>= (float4,float4)</literal></entry> </row> + <row><entry><literal>&lt; (float4,float4)</literal></entry></row> + <row><entry><literal>&gt; (float4,float4)</literal></entry></row> + <row><entry><literal>&lt;= (float4,float4)</literal></entry></row> + <row><entry><literal>&gt;= (float4,float4)</literal></entry></row> + <row> - <entry><literal>inet_minmax_ops</literal></entry> - <entry><type>inet</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>float8_minmax_ops</literal></entry> + <entry><literal>= (float8,float8)</literal></entry> </row> + <row><entry><literal>&lt; (float8,float8)</literal></entry></row> + <row><entry><literal>&lt;= (float8,float8)</literal></entry></row> + <row><entry><literal>&gt; (float8,float8)</literal></entry></row> + <row><entry><literal>&gt;= (float8,float8)</literal></entry></row> + <row> - <entry><literal>network_inclusion_ops</literal></entry> - <entry><type>inet</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&gt;&gt;=</literal> - <literal>&lt;&lt;=</literal> - <literal>=</literal> - <literal>&gt;&gt;</literal> - <literal>&lt;&lt;</literal> - </entry> + <entry morerows="5"><literal>inet_inclusion_ops</literal></entry> + <entry><literal>&lt;&lt; (inet,inet)</literal></entry> </row> + <row><entry><literal>&lt;&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt;= (inet,inet)</literal></entry></row> + <row><entry><literal>= (inet,inet)</literal></entry></row> + <row><entry><literal>&amp;&amp; (inet,inet)</literal></entry></row> + <row> - <entry><literal>int4_minmax_ops</literal></entry> - <entry><type>integer</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>inet_minmax_ops</literal></entry> + <entry><literal>= (inet,inet)</literal></entry> </row> + <row><entry><literal>&lt; (inet,inet)</literal></entry></row> + <row><entry><literal>&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;= (inet,inet)</literal></entry></row> + <row> - <entry><literal>interval_minmax_ops</literal></entry> - <entry><type>interval</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>int2_minmax_ops</literal></entry> + <entry><literal>= (int2,int2)</literal></entry> </row> + <row><entry><literal>&lt; (int2,int2)</literal></entry></row> + <row><entry><literal>&gt; (int2,int2)</literal></entry></row> + <row><entry><literal>&lt;= (int2,int2)</literal></entry></row> + <row><entry><literal>&gt;= (int2,int2)</literal></entry></row> + <row> - <entry><literal>macaddr_minmax_ops</literal></entry> - <entry><type>macaddr</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>int4_minmax_ops</literal></entry> + <entry><literal>= (int4,int4)</literal></entry> </row> + <row><entry><literal>&lt; (int4,int4)</literal></entry></row> + <row><entry><literal>&gt; (int4,int4)</literal></entry></row> + <row><entry><literal>&lt;= (int4,int4)</literal></entry></row> + <row><entry><literal>&gt;= (int4,int4)</literal></entry></row> + <row> - <entry><literal>macaddr8_minmax_ops</literal></entry> - <entry><type>macaddr8</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>int8_minmax_ops</literal></entry> + <entry><literal>= (bigint,bigint)</literal></entry> </row> + <row><entry><literal>&lt; (bigint,bigint)</literal></entry></row> + <row><entry><literal>&gt; (bigint,bigint)</literal></entry></row> + <row><entry><literal>&lt;= (bigint,bigint)</literal></entry></row> + <row><entry><literal>&gt;= (bigint,bigint)</literal></entry></row> + <row> - <entry><literal>name_minmax_ops</literal></entry> - <entry><type>name</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>interval_minmax_ops</literal></entry> + <entry><literal>= (interval,interval)</literal></entry> </row> + <row><entry><literal>&lt; (interval,interval)</literal></entry></row> + <row><entry><literal>&lt;= (interval,interval)</literal></entry></row> + <row><entry><literal>&gt; (interval,interval)</literal></entry></row> + <row><entry><literal>&gt;= (interval,interval)</literal></entry></row> + <row> - <entry><literal>numeric_minmax_ops</literal></entry> - <entry><type>numeric</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>macaddr_minmax_ops</literal></entry> + <entry><literal>= (macaddr,macaddr)</literal></entry> </row> + <row><entry><literal>&lt; (macaddr,macaddr)</literal></entry></row> + <row><entry><literal>&lt;= (macaddr,macaddr)</literal></entry></row> + <row><entry><literal>&gt; (macaddr,macaddr)</literal></entry></row> + <row><entry><literal>&gt;= (macaddr,macaddr)</literal></entry></row> + <row> - <entry><literal>pg_lsn_minmax_ops</literal></entry> - <entry><type>pg_lsn</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>macaddr8_minmax_ops</literal></entry> + <entry><literal>= (macaddr8,macaddr8)</literal></entry> </row> + <row><entry><literal>&lt; (macaddr8,macaddr8)</literal></entry></row> + <row><entry><literal>&lt;= (macaddr8,macaddr8)</literal></entry></row> + <row><entry><literal>&gt; (macaddr8,macaddr8)</literal></entry></row> + <row><entry><literal>&gt;= (macaddr8,macaddr8)</literal></entry></row> + <row> - <entry><literal>oid_minmax_ops</literal></entry> - <entry><type>oid</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>name_minmax_ops</literal></entry> + <entry><literal>= (name,name)</literal></entry> </row> + <row><entry><literal>&lt; (name,name)</literal></entry></row> + <row><entry><literal>&lt;= (name,name)</literal></entry></row> + <row><entry><literal>&gt; (name,name)</literal></entry></row> + <row><entry><literal>&gt;= (name,name)</literal></entry></row> + <row> - <entry><literal>range_inclusion_ops</literal></entry> - <entry><type>any range type</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&gt;&gt;</literal> - <literal>@&gt;</literal> - <literal>&lt;@</literal> - <literal>-|-</literal> - <literal>=</literal> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;</literal> - <literal>&gt;=</literal> - </entry> + <entry morerows="4"><literal>numeric_minmax_ops</literal></entry> + <entry><literal>= (numeric,numeric)</literal></entry> </row> + <row><entry><literal>&lt; (numeric,numeric)</literal></entry></row> + <row><entry><literal>&lt;= (numeric,numeric)</literal></entry></row> + <row><entry><literal>&gt; (numeric,numeric)</literal></entry></row> + <row><entry><literal>&gt;= (numeric,numeric)</literal></entry></row> + <row> - <entry><literal>float4_minmax_ops</literal></entry> - <entry><type>real</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>oid_minmax_ops</literal></entry> + <entry><literal>= (oid,oid)</literal></entry> </row> + <row><entry><literal>&lt; (oid,oid)</literal></entry></row> + <row><entry><literal>&gt; (oid,oid)</literal></entry></row> + <row><entry><literal>&lt;= (oid,oid)</literal></entry></row> + <row><entry><literal>&gt;= (oid,oid)</literal></entry></row> + <row> - <entry><literal>int2_minmax_ops</literal></entry> - <entry><type>smallint</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>pg_lsn_minmax_ops</literal></entry> + <entry><literal>= (pg_lsn,pg_lsn)</literal></entry> </row> + <row><entry><literal>&lt; (pg_lsn,pg_lsn)</literal></entry></row> + <row><entry><literal>&gt; (pg_lsn,pg_lsn)</literal></entry></row> + <row><entry><literal>&lt;= (pg_lsn,pg_lsn)</literal></entry></row> + <row><entry><literal>&gt;= (pg_lsn,pg_lsn)</literal></entry></row> + <row> - <entry><literal>text_minmax_ops</literal></entry> - <entry><type>text</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>text_minmax_ops</literal></entry> + <entry><literal>= (text,text)</literal></entry> </row> + <row><entry><literal>&lt; (text,text)</literal></entry></row> + <row><entry><literal>&lt;= (text,text)</literal></entry></row> + <row><entry><literal>&gt; (text,text)</literal></entry></row> + <row><entry><literal>&gt;= (text,text)</literal></entry></row> + <row> - <entry><literal>tid_minmax_ops</literal></entry> - <entry><type>tid</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>tid_minmax_ops</literal></entry> + <entry><literal>= (tid,tid)</literal></entry> </row> + <row><entry><literal>&lt; (tid,tid)</literal></entry></row> + <row><entry><literal>&gt; (tid,tid)</literal></entry></row> + <row><entry><literal>&lt;= (tid,tid)</literal></entry></row> + <row><entry><literal>&gt;= (tid,tid)</literal></entry></row> + <row> - <entry><literal>timestamp_minmax_ops</literal></entry> - <entry><type>timestamp without time zone</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>timestamp_minmax_ops</literal></entry> + <entry><literal>= (timestamp,timestamp)</literal></entry> </row> + <row><entry><literal>&lt; (timestamp,timestamp)</literal></entry></row> + <row><entry><literal>&lt;= (timestamp,timestamp)</literal></entry></row> + <row><entry><literal>&gt; (timestamp,timestamp)</literal></entry></row> + <row><entry><literal>&gt;= (timestamp,timestamp)</literal></entry></row> + <row> - <entry><literal>timestamptz_minmax_ops</literal></entry> - <entry><type>timestamp with time zone</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>timestamptz_minmax_ops</literal></entry> + <entry><literal>= (timestamptz,timestamptz)</literal></entry> </row> + <row><entry><literal>&lt; (timestamptz,timestamptz)</literal></entry></row> + <row><entry><literal>&lt;= (timestamptz,timestamptz)</literal></entry></row> + <row><entry><literal>&gt; (timestamptz,timestamptz)</literal></entry></row> + <row><entry><literal>&gt;= (timestamptz,timestamptz)</literal></entry></row> + <row> - <entry><literal>time_minmax_ops</literal></entry> - <entry><type>time without time zone</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>time_minmax_ops</literal></entry> + <entry><literal>= (time,time)</literal></entry> </row> + <row><entry><literal>&lt; (time,time)</literal></entry></row> + <row><entry><literal>&lt;= (time,time)</literal></entry></row> + <row><entry><literal>&gt; (time,time)</literal></entry></row> + <row><entry><literal>&gt;= (time,time)</literal></entry></row> + <row> - <entry><literal>timetz_minmax_ops</literal></entry> - <entry><type>time with time zone</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>timetz_minmax_ops</literal></entry> + <entry><literal>= (timetz,timetz)</literal></entry> </row> + <row><entry><literal>&lt; (timetz,timetz)</literal></entry></row> + <row><entry><literal>&lt;= (timetz,timetz)</literal></entry></row> + <row><entry><literal>&gt; (timetz,timetz)</literal></entry></row> + <row><entry><literal>&gt;= (timetz,timetz)</literal></entry></row> + <row> - <entry><literal>uuid_minmax_ops</literal></entry> - <entry><type>uuid</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;=</literal> - <literal>&gt;</literal> - </entry> + <entry morerows="4"><literal>uuid_minmax_ops</literal></entry> + <entry><literal>= (uuid,uuid)</literal></entry> </row> + <row><entry><literal>&lt; (uuid,uuid)</literal></entry></row> + <row><entry><literal>&gt; (uuid,uuid)</literal></entry></row> + <row><entry><literal>&lt;= (uuid,uuid)</literal></entry></row> + <row><entry><literal>&gt;= (uuid,uuid)</literal></entry></row> + </tbody> </tgroup> </table> diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml index 2d862669c3..4107a86cb0 100644 --- a/doc/src/sgml/gin.sgml +++ b/doc/src/sgml/gin.sgml @@ -75,53 +75,62 @@ <table id="gin-builtin-opclasses-table"> <title>Built-in <acronym>GIN</acronym> Operator Classes</title> - <tgroup cols="3"> + <tgroup cols="2"> <thead> <row> <entry>Name</entry> - <entry>Indexed Data Type</entry> <entry>Indexable Operators</entry> </row> </thead> <tbody> <row> - <entry><literal>array_ops</literal></entry> - <entry><type>anyarray</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&lt;@</literal> - <literal>=</literal> - <literal>@&gt;</literal> - </entry> + <entry morerows="3"><literal>array_ops</literal></entry> + <entry><literal>&amp;&amp; (anyarray,anyarray)</literal></entry> </row> <row> - <entry><literal>jsonb_ops</literal></entry> - <entry><type>jsonb</type></entry> - <entry> - <literal>?</literal> - <literal>?&amp;</literal> - <literal>?|</literal> - <literal>@&gt;</literal> - <literal>@?</literal> - <literal>@@</literal> - </entry> + <entry><literal>@&gt; (anyarray,anyarray)</literal></entry> </row> <row> - <entry><literal>jsonb_path_ops</literal></entry> - <entry><type>jsonb</type></entry> - <entry> - <literal>@&gt;</literal> - <literal>@?</literal> - <literal>@@</literal> - </entry> + <entry><literal>&lt;@ (anyarray,anyarray)</literal></entry> </row> <row> - <entry><literal>tsvector_ops</literal></entry> - <entry><type>tsvector</type></entry> - <entry> - <literal>@@</literal> - <literal>@@@</literal> - </entry> + <entry><literal>= (anyarray,anyarray)</literal></entry> + </row> + <row> + <entry morerows="5"><literal>jsonb_ops</literal></entry> + <entry><literal>@&gt; (jsonb,jsonb)</literal></entry> + </row> + <row> + <entry><literal>@? (jsonb,jsonpath)</literal></entry> + </row> + <row> + <entry><literal>@@ (jsonb,jsonpath)</literal></entry> + </row> + <row> + <entry><literal>? (jsonb,text)</literal></entry> + </row> + <row> + <entry><literal>?| (jsonb,text[])</literal></entry> + </row> + <row> + <entry><literal>?&amp; (jsonb,text[])</literal></entry> + </row> + <row> + <entry morerows="2"><literal>jsonb_path_ops</literal></entry> + <entry><literal>@&gt; (jsonb,jsonb)</literal></entry> + </row> + <row> + <entry><literal>@? (jsonb,jsonpath)</literal></entry> + </row> + <row> + <entry><literal>@@ (jsonb,jsonpath)</literal></entry> + </row> + <row> + <entry morerows="1"><literal>tsvector_ops</literal></entry> + <entry><literal>@@ (tsvector,tsquery)</literal></entry> + </row> + <row> + <entry><literal>@@@ (tsvector,tsquery)</literal></entry> </row> </tbody> </tgroup> diff --git a/doc/src/sgml/gist.sgml b/doc/src/sgml/gist.sgml index a505815f4e..2ee06585d1 100644 --- a/doc/src/sgml/gist.sgml +++ b/doc/src/sgml/gist.sgml @@ -53,157 +53,126 @@ <table id="gist-builtin-opclasses-table"> <title>Built-in <acronym>GiST</acronym> Operator Classes</title> - <tgroup cols="4"> + <tgroup cols="3"> <thead> <row> <entry>Name</entry> - <entry>Indexed Data Type</entry> <entry>Indexable Operators</entry> <entry>Ordering Operators</entry> </row> </thead> <tbody> <row> - <entry><literal>box_ops</literal></entry> - <entry><type>box</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&lt;|</literal> - <literal>&gt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;&lt;|</literal> - <literal>&lt;@</literal> - <literal>@&gt;</literal> - <literal>@</literal> - <literal>|&amp;&gt;</literal> - <literal>|&gt;&gt;</literal> - <literal>~</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="13"><literal>box_ops</literal></entry> + <entry><literal>&lt;&lt; (box,box)</literal></entry> + <entry morerows="13"><literal>&lt;-&gt; (box,point)</literal></entry> </row> + <row><entry><literal>&amp;&lt; (box,box)</literal></entry></row> + <row><entry><literal>&amp;&amp; (box,box)</literal></entry></row> + <row><entry><literal>&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>&gt;&gt; (box,box)</literal></entry></row> + <row><entry><literal>~= (box,box)</literal></entry></row> + <row><entry><literal>@&gt; (box,box)</literal></entry></row> + <row><entry><literal>&lt;@ (box,box)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (box,box)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>~ (box,box)</literal></entry></row> + <row><entry><literal>@ (box,box)</literal></entry></row> + <row> - <entry><literal>circle_ops</literal></entry> - <entry><type>circle</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&lt;|</literal> - <literal>&gt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;&lt;|</literal> - <literal>&lt;@</literal> - <literal>@&gt;</literal> - <literal>@</literal> - <literal>|&amp;&gt;</literal> - <literal>|&gt;&gt;</literal> - <literal>~</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="13"><literal>circle_ops</literal></entry> + <entry><literal>&lt;&lt; (circle,circle)</literal></entry> + <entry morerows="13"><literal>&lt;-&gt; (circle,point)</literal></entry> </row> + <row><entry><literal>&amp;&lt; (circle,circle)</literal></entry></row> + <row><entry><literal>&amp;&gt; (circle,circle)</literal></entry></row> + <row><entry><literal>&gt;&gt; (circle,circle)</literal></entry></row> + <row><entry><literal>&lt;@ (circle,circle)</literal></entry></row> + <row><entry><literal>@&gt; (circle,circle)</literal></entry></row> + <row><entry><literal>~= (circle,circle)</literal></entry></row> + <row><entry><literal>&amp;&amp; (circle,circle)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (circle,circle)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (circle,circle)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (circle,circle)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (circle,circle)</literal></entry></row> + <row><entry><literal>@ (circle,circle)</literal></entry></row> + <row><entry><literal>~ (circle,circle)</literal></entry></row> + <row> - <entry><literal>inet_ops</literal></entry> - <entry><type>inet</type>, <type>cidr</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&gt;&gt;</literal> - <literal>&gt;&gt;=</literal> - <literal>&gt;</literal> - <literal>&gt;=</literal> - <literal>&lt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;&lt;=</literal> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - </entry> - <entry> - </entry> + <entry morerows="10"><literal>inet_ops</literal></entry> + <entry><literal>&lt;&lt; (inet,inet)</literal></entry> + <entry morerows="10"></entry> </row> + <row><entry><literal>&lt;&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt;= (inet,inet)</literal></entry></row> + <row><entry><literal>= (inet,inet)</literal></entry></row> + <row><entry><literal>&lt;&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&lt; (inet,inet)</literal></entry></row> + <row><entry><literal>&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&amp;&amp; (inet,inet)</literal></entry></row> + <row> - <entry><literal>point_ops</literal></entry> - <entry><type>point</type></entry> - <entry> - <literal>&gt;&gt;</literal> - <literal>&gt;^</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;@</literal> - <literal>&lt;@</literal> - <literal>&lt;@</literal> - <literal>&lt;^</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="7"><literal>point_ops</literal></entry> + <entry><literal>&gt;^ (point,point)</literal></entry> + <entry morerows="7"><literal>&lt;-&gt; (point,point)</literal></entry> </row> + <row><entry><literal>&lt;&lt; (point,point)</literal></entry></row> + <row><entry><literal>&gt;&gt; (point,point)</literal></entry></row> + <row><entry><literal>&lt;^ (point,point)</literal></entry></row> + <row><entry><literal>~= (point,point)</literal></entry></row> + <row><entry><literal>&lt;@ (point,box)</literal></entry></row> + <row><entry><literal>&lt;@ (point,polygon)</literal></entry></row> + <row><entry><literal>&lt;@ (point,circle)</literal></entry></row> + <row> - <entry><literal>poly_ops</literal></entry> - <entry><type>polygon</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&lt;|</literal> - <literal>&gt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;&lt;|</literal> - <literal>&lt;@</literal> - <literal>@&gt;</literal> - <literal>@</literal> - <literal>|&amp;&gt;</literal> - <literal>|&gt;&gt;</literal> - <literal>~</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="13"><literal>poly_ops</literal></entry> + <entry><literal>&lt;&lt; (polygon,polygon)</literal></entry> + <entry morerows="13"><literal>&lt;-&gt; (polygon,point)</literal></entry> </row> + <row><entry><literal>&amp;&lt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&gt;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&lt;@ (polygon,polygon)</literal></entry></row> + <row><entry><literal>@&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>~= (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&amp; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (polygon,polygon)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>@ (polygon,polygon)</literal></entry></row> + <row><entry><literal>~ (polygon,polygon)</literal></entry></row> + <row> - <entry><literal>range_ops</literal></entry> - <entry>any range type</entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&amp;&lt;</literal> - <literal>&gt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;@</literal> - <literal>-|-</literal> - <literal>=</literal> - <literal>@&gt;</literal> - <literal>@&gt;</literal> - </entry> - <entry> - </entry> + <entry morerows="9"><literal>range_ops</literal></entry> + <entry><literal>= (anyrange,anyrange)</literal></entry> + <entry morerows="9"></entry> </row> + <row><entry><literal>&amp;&amp; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyelement)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;@ (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&gt;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>-|- (anyrange,anyrange)</literal></entry></row> + <row> - <entry><literal>tsquery_ops</literal></entry> - <entry><type>tsquery</type></entry> - <entry> - <literal>&lt;@</literal> - <literal>@&gt;</literal> - </entry> - <entry> - </entry> + <entry morerows="1"><literal>tsquery_ops</literal></entry> + <entry><literal>&lt;@ (tsquery,tsquery)</literal></entry> + <entry morerows="1"></entry> </row> + <row><entry><literal>@&gt; (tsquery,tsquery)</literal></entry></row> <row> <entry><literal>tsvector_ops</literal></entry> - <entry><type>tsvector</type></entry> - <entry> - <literal>@@</literal> - </entry> - <entry> - </entry> + <entry><literal>@@ (tsvector,tsquery)</literal></entry> + <entry></entry> </row> </tbody> </tgroup> diff --git a/doc/src/sgml/spgist.sgml b/doc/src/sgml/spgist.sgml index b86302e4ef..915aeef1a2 100644 --- a/doc/src/sgml/spgist.sgml +++ b/doc/src/sgml/spgist.sgml @@ -64,142 +64,116 @@ <table id="spgist-builtin-opclasses-table"> <title>Built-in <acronym>SP-GiST</acronym> Operator Classes</title> - <tgroup cols="4"> + <tgroup cols="3"> <thead> <row> <entry>Name</entry> - <entry>Indexed Data Type</entry> <entry>Indexable Operators</entry> <entry>Ordering Operators</entry> </row> </thead> <tbody> <row> - <entry><literal>kd_point_ops</literal></entry> - <entry><type>point</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&lt;@</literal> - <literal>&lt;^</literal> - <literal>&gt;&gt;</literal> - <literal>&gt;^</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="11"><literal>box_ops</literal></entry> + <entry><literal>&lt;&lt; (box,box)</literal></entry> + <entry morerows="11"><literal>&lt;-&gt; (box,point)</literal></entry> </row> + <row><entry><literal>&amp;&lt; (box,box)</literal></entry></row> + <row><entry><literal>&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>&gt;&gt; (box,box)</literal></entry></row> + <row><entry><literal>&lt;@ (box,box)</literal></entry></row> + <row><entry><literal>@&gt; (box,box)</literal></entry></row> + <row><entry><literal>~= (box,box)</literal></entry></row> + <row><entry><literal>&amp;&amp; (box,box)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (box,box)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (box,box)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (box,box)</literal></entry></row> + <row> - <entry><literal>quad_point_ops</literal></entry> - <entry><type>point</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&lt;@</literal> - <literal>&lt;^</literal> - <literal>&gt;&gt;</literal> - <literal>&gt;^</literal> - <literal>~=</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="5"><literal>kd_point_ops</literal></entry> + <entry><literal>&gt;^ (point,point)</literal></entry> + <entry morerows="5"><literal>&lt;-&gt; (point,point)</literal></entry> </row> + <row><entry><literal>&lt;&lt; (point,point)</literal></entry></row> + <row><entry><literal>&gt;&gt; (point,point)</literal></entry></row> + <row><entry><literal>&lt;^ (point,point)</literal></entry></row> + <row><entry><literal>~= (point,point)</literal></entry></row> + <row><entry><literal>&lt;@ (point,box)</literal></entry></row> + <row> - <entry><literal>range_ops</literal></entry> - <entry>any range type</entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&gt;</literal> - <literal>-|-</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;@</literal> - <literal>=</literal> - <literal>&gt;&gt;</literal> - <literal>@&gt;</literal> - </entry> - <entry> - </entry> + <entry morerows="10"><literal>network_ops</literal></entry> + <entry><literal>&lt;&lt; (inet,inet)</literal></entry> + <entry morerows="10"></entry> </row> + <row><entry><literal>&lt;&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;&gt;= (inet,inet)</literal></entry></row> + <row><entry><literal>= (inet,inet)</literal></entry></row> + <row><entry><literal>&lt;&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&lt; (inet,inet)</literal></entry></row> + <row><entry><literal>&lt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&gt; (inet,inet)</literal></entry></row> + <row><entry><literal>&gt;= (inet,inet)</literal></entry></row> + <row><entry><literal>&amp;&amp; (inet,inet)</literal></entry></row> + <row> - <entry><literal>box_ops</literal></entry> - <entry><type>box</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&gt;&gt;</literal> - <literal>~=</literal> - <literal>@&gt;</literal> - <literal>&lt;@</literal> - <literal>&amp;&lt;|</literal> - <literal>&lt;&lt;|</literal> - <literal>|&gt;&gt;</literal> - <literal>|&amp;&gt;</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="11"><literal>poly_ops</literal></entry> + <entry><literal>&lt;&lt; (polygon,polygon)</literal></entry> + <entry morerows="11"><literal>&lt;-&gt; (polygon,point)</literal></entry> </row> + <row><entry><literal>&amp;&lt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&gt;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&lt;@ (polygon,polygon)</literal></entry></row> + <row><entry><literal>@&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>~= (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&amp; (polygon,polygon)</literal></entry></row> + <row><entry><literal>&lt;&lt;| (polygon,polygon)</literal></entry></row> + <row><entry><literal>&amp;&lt;| (polygon,polygon)</literal></entry></row> + <row><entry><literal>|&gt;&gt; (polygon,polygon)</literal></entry></row> + <row><entry><literal>|&amp;&gt; (polygon,polygon)</literal></entry></row> + <row> - <entry><literal>poly_ops</literal></entry> - <entry><type>polygon</type></entry> - <entry> - <literal>&lt;&lt;</literal> - <literal>&amp;&lt;</literal> - <literal>&amp;&amp;</literal> - <literal>&amp;&gt;</literal> - <literal>&gt;&gt;</literal> - <literal>~=</literal> - <literal>@&gt;</literal> - <literal>&lt;@</literal> - <literal>&amp;&lt;|</literal> - <literal>&lt;&lt;|</literal> - <literal>|&gt;&gt;</literal> - <literal>|&amp;&gt;</literal> - </entry> - <entry> - <literal>&lt;-&gt;</literal> - </entry> + <entry morerows="5"><literal>quad_point_ops</literal></entry> + <entry><literal>&gt;^ (point,point)</literal></entry> + <entry morerows="5"><literal>&lt;-&gt; (point,point)</literal></entry> </row> + <row><entry><literal>&lt;&lt; (point,point)</literal></entry></row> + <row><entry><literal>&gt;&gt; (point,point)</literal></entry></row> + <row><entry><literal>&lt;^ (point,point)</literal></entry></row> + <row><entry><literal>~= (point,point)</literal></entry></row> + <row><entry><literal>&lt;@ (point,box)</literal></entry></row> + <row> - <entry><literal>text_ops</literal></entry> - <entry><type>text</type></entry> - <entry> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - <literal>&gt;</literal> - <literal>&gt;=</literal> - <literal>~&lt;=~</literal> - <literal>~&lt;~</literal> - <literal>~&gt;=~</literal> - <literal>~&gt;~</literal> - <literal>^@</literal> - </entry> - <entry> - </entry> + <entry morerows="9"><literal>range_ops</literal></entry> + <entry><literal>= (anyrange,anyrange)</literal></entry> + <entry morerows="9"></entry> </row> + <row><entry><literal>&amp;&amp; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyelement)</literal></entry></row> + <row><entry><literal>@&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;@ (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&lt;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&gt;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&lt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>&amp;&gt; (anyrange,anyrange)</literal></entry></row> + <row><entry><literal>-|- (anyrange,anyrange)</literal></entry></row> + <row> - <entry><literal>inet_ops</literal></entry> - <entry><type>inet</type>, <type>cidr</type></entry> - <entry> - <literal>&amp;&amp;</literal> - <literal>&gt;&gt;</literal> - <literal>&gt;&gt;=</literal> - <literal>&gt;</literal> - <literal>&gt;=</literal> - <literal>&lt;&gt;</literal> - <literal>&lt;&lt;</literal> - <literal>&lt;&lt;=</literal> - <literal>&lt;</literal> - <literal>&lt;=</literal> - <literal>=</literal> - </entry> - <entry> - </entry> + <entry morerows="9"><literal>text_ops</literal></entry> + <entry><literal>= (text,text)</literal></entry> + <entry morerows="9"></entry> </row> + <row><entry><literal>&lt; (text,text)</literal></entry></row> + <row><entry><literal>&lt;= (text,text)</literal></entry></row> + <row><entry><literal>&gt; (text,text)</literal></entry></row> + <row><entry><literal>&gt;= (text,text)</literal></entry></row> + <row><entry><literal>~&lt;~ (text,text)</literal></entry></row> + <row><entry><literal>~&lt;=~ (text,text)</literal></entry></row> + <row><entry><literal>~&gt;=~ (text,text)</literal></entry></row> + <row><entry><literal>~&gt;~ (text,text)</literal></entry></row> + <row><entry><literal>^@ (text,text)</literal></entry></row> </tbody> </tgroup> </table>
signature.asc (application/pgp-signature, 832B) download

view thread (28+ messages)  latest in thread

Message-ID: <20200827063126.GO2017@paquier.xyz>
Permalink:  ../20200827063126.GO2017@paquier.xyz/
Also on:    postgresql.org/message-id/20200827063126.GO2017@paquier.xyz

 ·  · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-docs@postgresql.org
  Cc: michael@paquier.xyz, tgl@sss.pgh.pa.us, alvherre@2ndquadrant.com, bruce@momjian.us, mailtch@163.com, jkatz@postgresql.org
  Subject: Re: Document "59.2. Built-in Operator Classes" have a clerical error?
  In-Reply-To: <20200827063126.GO2017@paquier.xyz>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox