btree_gin 为数据类型 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 以及所有 enum 类型提供实现 B 树等价行为的 GIN 操作符类。
通常,这些操作符类的性能不会超过等效的标准 B 树索引方法,并且缺少标准 B 树代码的一项主要特性:强制唯一性的能力。不过,它们对于 GIN 测试以及作为开发其他 GIN 操作符类的基础非常有用。此外,对于同时测试可 GIN 索引列与可 B 树索引列的查询,使用这些操作符类之一创建多列 GIN 索引,可能比创建两个需要通过位图 AND 合并的独立索引更高效。
该模块被视为“可信”模块,也就是说,拥有当前数据库 CREATE 权限的非超级用户也可以安装它。
CREATE TABLE test (a int4); -- create index CREATE INDEX testidx ON test USING GIN (a); -- query SELECT * FROM test WHERE a < 10;
Teodor Sigaev (<teodor@stack.net>) 与
Oleg Bartunov (<oleg@sai.msu.su>)。更多信息请参阅
http://www.sai.msu.su/~megera/oddmuse/index.cgi/Gin。