PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 12.21 » Annexes » Modules supplémentaires fournis » btree_gin

F.6. btree_gin

btree_gin fournit des échantillons de classes d'opérateurs GIN qui codent un comportement équivalent à un B-tree pour les types int2, int4, int8, float4, float8, timestamp with time zone, timestamp without time zone, time with time zone, time without time zone, date, interval, oid, money, "char", varchar, text, bytea, bit, varbit, macaddr, macaddr8, inet, cidr, uuid, name, bool, bpchar et tous les types enum.

En général, ces classes d'opérateurs ne sont pas plus rapides que les méthodes standard d'indexation B-tree équivalentes, et il leur manque une fonctionnalité majeure du code B-tree standard : la capacité à forcer l'unicité. Toutefois, elles sont utiles pour tester GIN et comme base pour développer d'autres classes d'opérateurs GIN. Par ailleurs, pour des requêtes qui testent à la fois une colonnne indexable via GIN et une colonne indexable par B-tree, il peut être plus efficace de créer un index GIN multicolonne qui utilise une de ces classes d'opérateurs que de créer deux index séparés qui devront être combinés par une opération de bitmap ET.

F.6.1. Exemple d'utilisation

CREATE TABLE test (a int4);
-- crée l'index
CREATE INDEX testidx ON test USING GIN (a);
-- requête
SELECT * FROM test WHERE a < 10;
  

F.6.2. Auteurs

Teodor Sigaev () et Oleg Bartunov (). Voir http://www.sai.msu.su/~megera/oddmuse/index.cgi/Gin pour plus d'informations.