61.2. Classes d'opérateur internes

La distribution PostgreSQL™ inclut les classes d'opérateur GIN affichées dans Tableau 61.1, « Classes d'opérateur GIN internes ». (Certains des modules optionnels décrits dans Annexe F, Modules supplémentaires fournis fournissent des classes d'opérateurs GIN supplémentaires.)

Tableau 61.1. Classes d'opérateur GIN internes

Nom Type de données indexé Opérateurs indexables
_abstime_ops abstime[] && <@ = @>
_bit_ops bit[] && <@ = @>
_bool_ops boolean[] && <@ = @>
_bpchar_ops character[] && <@ = @>
_bytea_ops bytea[] && <@ = @>
_char_ops "char"[] && <@ = @>
_cidr_ops cidr[] && <@ = @>
_date_ops date[] && <@ = @>
_float4_ops float4[] && <@ = @>
_float8_ops float8[] && <@ = @>
_inet_ops inet[] && <@ = @>
_int2_ops smallint[] && <@ = @>
_int4_ops integer[] && <@ = @>
_int8_ops bigint[] && <@ = @>
_interval_ops interval[] && <@ = @>
_macaddr_ops macaddr[] && <@ = @>
_money_ops money[] && <@ = @>
_name_ops name[] && <@ = @>
_numeric_ops numeric[] && <@ = @>
_oid_ops oid[] && <@ = @>
_oidvector_ops oidvector[] && <@ = @>
_reltime_ops reltime[] && <@ = @>
_text_ops text[] && <@ = @>
_time_ops time[] && <@ = @>
_timestamp_ops timestamp[] && <@ = @>
_timestamptz_ops timestamp with time zone[] && <@ = @>
_timetz_ops time with time zone[] && <@ = @>
_tinterval_ops tinterval[] && <@ = @>
_varbit_ops bit varying[] && <@ = @>
_varchar_ops character varying[] && <@ = @>
jsonb_ops jsonb ? ?& ?| @>
jsonb_path_ops jsonb @>
tsvector_ops tsvector @@ @@@

Des deux classes d'opérateur pour le type jsonb, jsonb_ops est l'opérateur par défaut. jsonb_path_ops supporte moins d'opérateurs mais offre de meilleures performances pour ces opérateurs. Voir Section 8.14.4, « Indexation jsonb » pour plus de détails.