PG插件pg_trgm实现模糊查询走索引

0    698    1

Tags:

👉 本文共约963个字,系统预计阅读时间或需4分钟。

PG中的索引

参考:https://www.dbaup.com/pgzhongdesuoyin.html

索引类型:B-Tree、hash、Gin、Gist、SP-Gist、Brin

B-Tree:用来查找单个值或者扫描一个范围,比如大于、小于或者等于某个值。

B-Tree索引默认升序存储,从PostgreSQL8.3开始,空值也被存储在其中,但默认放在最后,使用如下SQL可以把这个顺序翻转过来:

Create index idx_111 on t( c1 desc NULLS first);

Hash:用于等值查询并且索引中无NULL值。

Gin:Gin存储了一个由键及其行倒排列表构成的列表,键的行倒排列表中的每一行都包含该键,一行也可能出现在多个键的倒排列表中。Gin也是一种实现全文搜索的方式,在PostgreSQL的contrib模块的pg_trgm扩展可以利用Gin索引来实现全文搜索。

GiST:通用搜索树(GiST)提供了一种用于存储数据的方式来构建平衡的树结构,只需要定义如何对待键即可,内建的B-tree也可以用它构建。这就允许使用该类索引来解决B-tree能处理的常规相对和范围比较之外的问题。例如,PostgreSQL中的几何数据类型包括的操作符允许索引根据项之间的距离以及项之间是否相交来排序。

SP-GiST:是Space-Partitioned GiST的缩写。SP-GiST支持划分搜索树,这种书可以用来开发范围广泛的非平衡数据结构,例如四叉树、k-d树和后缀树(字典树)。

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复