From 7a1cd5260aa20bc13aec8960a57904b5623d1830 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 28 Aug 2020 16:54:59 +0900 Subject: [PATCH] doc: Rework tables for built-in operator classes of index AMs MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The tables listing all the operator classes available for BRIN, GIN, GiST and SP-GiST had a confusing format where the same operator could be listed multiple times, for different data types. This improves the shape of these tables by adding the types associated to each operator, for their associated operator class. Each table included previously the data type that could be used for an operator class in an extra column. This is removed to reduce the width of the tables as this is now described within each operator. This also makes the tables fit better in the PDF documentation. Reported-by: osdba Author: Michael Paquier Reviewed-by: Álvaro Herrera, Tom Lane, Bruce Momjian Discussion: https://postgr.es/m/38d55061.9604.173b32c60ec.Coremail.mailtch@163.com --- doc/src/sgml/brin.sgml | 616 ++++++++++++++++++--------------------- doc/src/sgml/gin.sgml | 75 ++--- doc/src/sgml/gist.sgml | 225 ++++++-------- doc/src/sgml/spgist.sgml | 202 ++++++------- 4 files changed, 504 insertions(+), 614 deletions(-) diff --git a/doc/src/sgml/brin.sgml b/doc/src/sgml/brin.sgml index b9d596e3c4..4420794e5b 100644 --- a/doc/src/sgml/brin.sgml +++ b/doc/src/sgml/brin.sgml @@ -120,354 +120,292 @@ LOG: request for BRIN range summarization for index "brin_wi_idx" page 128 was Built-in <acronym>BRIN</acronym> Operator Classes - - - - + Name - Indexed Data Type Indexable Operators - int8_minmax_ops - bigint - - < - <= - = - >= - > - - - - bit_minmax_ops - bit - - < - <= - = - >= - > - - - - varbit_minmax_ops - bit varying - - < - <= - = - >= - > - - - - box_inclusion_ops - box - - << - &< - && - &> - >> - ~= - @> - <@ - &<| - <<| - |>> - |&> - - - - bytea_minmax_ops - bytea - - < - <= - = - >= - > - - - - bpchar_minmax_ops - character - - < - <= - = - >= - > - - - - char_minmax_ops - "char" - - < - <= - = - >= - > - - - - date_minmax_ops - date - - < - <= - = - >= - > - - - - float8_minmax_ops - double precision - - < - <= - = - >= - > - - - - inet_minmax_ops - inet - - < - <= - = - >= - > - - - - network_inclusion_ops - inet - - && - >>= - <<= - = - >> - << - - - - int4_minmax_ops - integer - - < - <= - = - >= - > - - - - interval_minmax_ops - interval - - < - <= - = - >= - > - - - - macaddr_minmax_ops - macaddr - - < - <= - = - >= - > - - - - macaddr8_minmax_ops - macaddr8 - - < - <= - = - >= - > - - - - name_minmax_ops - name - - < - <= - = - >= - > - - - - numeric_minmax_ops - numeric - - < - <= - = - >= - > - - - - pg_lsn_minmax_ops - pg_lsn - - < - <= - = - >= - > - - - - oid_minmax_ops - oid - - < - <= - = - >= - > - - - - range_inclusion_ops - any range type - - << - &< - && - &> - >> - @> - <@ - -|- - = - < - <= - = - > - >= - - - - float4_minmax_ops - real - - < - <= - = - >= - > - - - - int2_minmax_ops - smallint - - < - <= - = - >= - > - - - - text_minmax_ops - text - - < - <= - = - >= - > - - - - tid_minmax_ops - tid - - < - <= - = - >= - > - - - - timestamp_minmax_ops - timestamp without time zone - - < - <= - = - >= - > - - - - timestamptz_minmax_ops - timestamp with time zone - - < - <= - = - >= - > - - - - time_minmax_ops - time without time zone - - < - <= - = - >= - > - - - - timetz_minmax_ops - time with time zone - - < - <= - = - >= - > - - - - uuid_minmax_ops - uuid - - < - <= - = - >= - > - + bit_minmax_ops + = (bit,bit) + + < (bit,bit) + > (bit,bit) + <= (bit,bit) + >= (bit,bit) + + + box_inclusion_ops + @> (box,point) + + << (box,box) + &< (box,box) + &> (box,box) + >> (box,box) + <@ (box,box) + @> (box,box) + ~= (box,box) + && (box,box) + <<| (box,box) + &<| (box,box) + |&> (box,box) + |>> (box,box) + + + bpchar_minmax_ops + = (character,character) + + < (character,character) + <= (character,character) + > (character,character) + >= (character,character) + + + bytea_minmax_ops + = (bytea,bytea) + + < (bytea,bytea) + <= (bytea,bytea) + > (bytea,bytea) + >= (bytea,bytea) + + + char_minmax_ops + = ("char","char") + + < ("char","char") + <= ("char","char") + > ("char","char") + >= ("char","char") + + + date_minmax_ops + = (date,date) + + < (date,date) + <= (date,date) + > (date,date) + >= (date,date) + + + float4_minmax_ops + = (float4,float4) + + < (float4,float4) + > (float4,float4) + <= (float4,float4) + >= (float4,float4) + + + float8_minmax_ops + = (float8,float8) + + < (float8,float8) + <= (float8,float8) + > (float8,float8) + >= (float8,float8) + + + inet_inclusion_ops + << (inet,inet) + + <<= (inet,inet) + >> (inet,inet) + >>= (inet,inet) + = (inet,inet) + && (inet,inet) + + + inet_minmax_ops + = (inet,inet) + + < (inet,inet) + <= (inet,inet) + > (inet,inet) + >= (inet,inet) + + + int2_minmax_ops + = (int2,int2) + + < (int2,int2) + > (int2,int2) + <= (int2,int2) + >= (int2,int2) + + + int4_minmax_ops + = (int4,int4) + + < (int4,int4) + > (int4,int4) + <= (int4,int4) + >= (int4,int4) + + + int8_minmax_ops + = (bigint,bigint) + + < (bigint,bigint) + > (bigint,bigint) + <= (bigint,bigint) + >= (bigint,bigint) + + + interval_minmax_ops + = (interval,interval) + + < (interval,interval) + <= (interval,interval) + > (interval,interval) + >= (interval,interval) + + + macaddr_minmax_ops + = (macaddr,macaddr) + + < (macaddr,macaddr) + <= (macaddr,macaddr) + > (macaddr,macaddr) + >= (macaddr,macaddr) + + + macaddr8_minmax_ops + = (macaddr8,macaddr8) + + < (macaddr8,macaddr8) + <= (macaddr8,macaddr8) + > (macaddr8,macaddr8) + >= (macaddr8,macaddr8) + + + name_minmax_ops + = (name,name) + + < (name,name) + <= (name,name) + > (name,name) + >= (name,name) + + + numeric_minmax_ops + = (numeric,numeric) + + < (numeric,numeric) + <= (numeric,numeric) + > (numeric,numeric) + >= (numeric,numeric) + + + oid_minmax_ops + = (oid,oid) + + < (oid,oid) + > (oid,oid) + <= (oid,oid) + >= (oid,oid) + + + pg_lsn_minmax_ops + = (pg_lsn,pg_lsn) + + < (pg_lsn,pg_lsn) + > (pg_lsn,pg_lsn) + <= (pg_lsn,pg_lsn) + >= (pg_lsn,pg_lsn) + + + range_inclusion_ops + = (anyrange,anyrange) + + < (anyrange,anyrange) + <= (anyrange,anyrange) + >= (anyrange,anyrange) + > (anyrange,anyrange) + && (anyrange,anyrange) + @> (anyrange,anyelement) + @> (anyrange,anyrange) + <@ (anyrange,anyrange) + << (anyrange,anyrange) + >> (anyrange,anyrange) + &< (anyrange,anyrange) + &> (anyrange,anyrange) + -|- (anyrange,anyrange) + + + text_minmax_ops + = (text,text) + + < (text,text) + <= (text,text) + > (text,text) + >= (text,text) + + + tid_minmax_ops + = (tid,tid) + + < (tid,tid) + > (tid,tid) + <= (tid,tid) + >= (tid,tid) + + + timestamp_minmax_ops + = (timestamp,timestamp) + + < (timestamp,timestamp) + <= (timestamp,timestamp) + > (timestamp,timestamp) + >= (timestamp,timestamp) + + + timestamptz_minmax_ops + = (timestamptz,timestamptz) + + < (timestamptz,timestamptz) + <= (timestamptz,timestamptz) + > (timestamptz,timestamptz) + >= (timestamptz,timestamptz) + + + time_minmax_ops + = (time,time) + + < (time,time) + <= (time,time) + > (time,time) + >= (time,time) + + + timetz_minmax_ops + = (timetz,timetz) + + < (timetz,timetz) + <= (timetz,timetz) + > (timetz,timetz) + >= (timetz,timetz) + + + uuid_minmax_ops + = (uuid,uuid) + + < (uuid,uuid) + > (uuid,uuid) + <= (uuid,uuid) + >= (uuid,uuid) + + + varbit_minmax_ops + = (varbit,varbit) + < (varbit,varbit) + > (varbit,varbit) + <= (varbit,varbit) + >= (varbit,varbit)
diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml index 2d862669c3..5c8d4d5275 100644 --- a/doc/src/sgml/gin.sgml +++ b/doc/src/sgml/gin.sgml @@ -75,53 +75,62 @@ Built-in <acronym>GIN</acronym> Operator Classes - + Name - Indexed Data Type Indexable Operators - array_ops - anyarray - - && - <@ - = - @> - + array_ops + && (anyarray,anyarray) - jsonb_ops - jsonb - - ? - ?& - ?| - @> - @? - @@ - + @> (anyarray,anyarray) - jsonb_path_ops - jsonb - - @> - @? - @@ - + <@ (anyarray,anyarray) - tsvector_ops - tsvector - - @@ - @@@ - + = (anyarray,anyarray) + + + jsonb_ops + @> (jsonb,jsonb) + + + @? (jsonb,jsonpath) + + + @@ (jsonb,jsonpath) + + + ? (jsonb,text) + + + ?| (jsonb,text[]) + + + ?& (jsonb,text[]) + + + jsonb_path_ops + @> (jsonb,jsonb) + + + @? (jsonb,jsonpath) + + + @@ (jsonb,jsonpath) + + + tsvector_ops + @@ (tsvector,tsquery) + + + @@@ (tsvector,tsquery) diff --git a/doc/src/sgml/gist.sgml b/doc/src/sgml/gist.sgml index a505815f4e..f9226e7a35 100644 --- a/doc/src/sgml/gist.sgml +++ b/doc/src/sgml/gist.sgml @@ -53,157 +53,126 @@
Built-in <acronym>GiST</acronym> Operator Classes - + Name - Indexed Data Type Indexable Operators Ordering Operators - box_ops - box - - && - &> - &< - &<| - >> - << - <<| - <@ - @> - @ - |&> - |>> - ~ - ~= - - - <-> - + 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) + ~ (box,box) + @ (box,box) + - circle_ops - circle - - && - &> - &< - &<| - >> - << - <<| - <@ - @> - @ - |&> - |>> - ~ - ~= - - - <-> - + circle_ops + << (circle,circle) + <-> (circle,point) + &< (circle,circle) + &> (circle,circle) + >> (circle,circle) + <@ (circle,circle) + @> (circle,circle) + ~= (circle,circle) + && (circle,circle) + |>> (circle,circle) + <<| (circle,circle) + &<| (circle,circle) + |&> (circle,circle) + @ (circle,circle) + ~ (circle,circle) + - inet_ops - inet, cidr - - && - >> - >>= - > - >= - <> - << - <<= - < - <= - = - - - + inet_ops + << (inet,inet) + + <<= (inet,inet) + >> (inet,inet) + >>= (inet,inet) + = (inet,inet) + <> (inet,inet) + < (inet,inet) + <= (inet,inet) + > (inet,inet) + >= (inet,inet) + && (inet,inet) + - point_ops - point - - >> - >^ - << - <@ - <@ - <@ - <^ - ~= - - - <-> - + point_ops + >^ (point,point) + <-> (point,point) + << (point,point) + >> (point,point) + <^ (point,point) + ~= (point,point) + <@ (point,box) + <@ (point,polygon) + <@ (point,circle) + - poly_ops - polygon - - && - &> - &< - &<| - >> - << - <<| - <@ - @> - @ - |&> - |>> - ~ - ~= - - - <-> - + 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) + @ (polygon,polygon) + ~ (polygon,polygon) + - range_ops - any range type - - && - &> - &< - >> - << - <@ - -|- - = - @> - @> - - - + range_ops + = (anyrange,anyrange) + + && (anyrange,anyrange) + @> (anyrange,anyelement) + @> (anyrange,anyrange) + <@ (anyrange,anyrange) + << (anyrange,anyrange) + >> (anyrange,anyrange) + &< (anyrange,anyrange) + &> (anyrange,anyrange) + -|- (anyrange,anyrange) + - tsquery_ops - tsquery - - <@ - @> - - - + tsquery_ops + <@ (tsquery,tsquery) + + @> (tsquery,tsquery) - tsvector_ops - tsvector - - @@ - - - + tsvector_ops + @@ (tsvector,tsquery) + diff --git a/doc/src/sgml/spgist.sgml b/doc/src/sgml/spgist.sgml index b86302e4ef..68d09951d9 100644 --- a/doc/src/sgml/spgist.sgml +++ b/doc/src/sgml/spgist.sgml @@ -64,142 +64,116 @@
Built-in <acronym>SP-GiST</acronym> Operator Classes - + Name - Indexed Data Type Indexable Operators Ordering Operators - kd_point_ops - point - - << - <@ - <^ - >> - >^ - ~= - - - <-> - + 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) + - quad_point_ops - point - - << - <@ - <^ - >> - >^ - ~= - - - <-> - + kd_point_ops + >^ (point,point) + <-> (point,point) + << (point,point) + >> (point,point) + <^ (point,point) + ~= (point,point) + <@ (point,box) + - range_ops - any range type - - && - &< - &> - -|- - << - <@ - = - >> - @> - - - + network_ops + << (inet,inet) + + <<= (inet,inet) + >> (inet,inet) + >>= (inet,inet) + = (inet,inet) + <> (inet,inet) + < (inet,inet) + <= (inet,inet) + > (inet,inet) + >= (inet,inet) + && (inet,inet) + - box_ops - 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) + - poly_ops - polygon - - << - &< - && - &> - >> - ~= - @> - <@ - &<| - <<| - |>> - |&> - - - <-> - + quad_point_ops + >^ (point,point) + <-> (point,point) + << (point,point) + >> (point,point) + <^ (point,point) + ~= (point,point) + <@ (point,box) + - text_ops - text - - < - <= - = - > - >= - ~<=~ - ~<~ - ~>=~ - ~>~ - ^@ - - - + range_ops + = (anyrange,anyrange) + + && (anyrange,anyrange) + @> (anyrange,anyelement) + @> (anyrange,anyrange) + <@ (anyrange,anyrange) + << (anyrange,anyrange) + >> (anyrange,anyrange) + &< (anyrange,anyrange) + &> (anyrange,anyrange) + -|- (anyrange,anyrange) + - inet_ops - inet, cidr - - && - >> - >>= - > - >= - <> - << - <<= - < - <= - = - - - + text_ops + = (text,text) + + < (text,text) + <= (text,text) + > (text,text) + >= (text,text) + ~<~ (text,text) + ~<=~ (text,text) + ~>=~ (text,text) + ~>~ (text,text) + ^@ (text,text)
-- 2.39.5