首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Postgresql: tsvector全文搜索

Postgresql: tsvector全文搜索
EN

Stack Overflow用户
提问于 2017-10-12 18:36:16
回答 1查看 211关注 0票数 0

我有一个包含100m行的表格,我需要对其进行全文搜索,并提供有关文本的相似度(例如,使用pg_trgm模块)的信息。关闭,因为这里的问题是它应该很快。

我尝试了gist和gin索引,在我的字段的tsvector中添加了一个额外的列。

我的想法是首先使用tsvector进行查询,然后运行pg_trgm模块提供的相似度函数。

我的问题如下。如果我使用一个完整的单词作为我的查询,它将工作。但如果我附加一些东西就不会了。

这完全说得通,因为“一只敏捷的棕色狐狸”的tsvector ...是"'a':1 'brown':3 'fox':4 'quick':2"

我希望我已经清楚地说明了我想要实现的目标。

示例:

作品

代码语言:javascript
复制
select to_tsvector('A quick brown fox...') @@ to_tsquery('quick') -- true

不工作

代码语言:javascript
复制
select to_tsvector('A quick brown fox...') @@ to_tsquery('quicks') -- false

关于如何使用postgresql实现这一点有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2021-09-22 14:26:36

您需要设置语言配置参数,如下所示:

代码语言:javascript
复制
select to_tsvector('english', 'A quick brown fox...') @@ to_tsquery('english', 'quicks')

只有当tsquerytsvector具有相同的语言配置时,才能正确识别词位、复数和填充物。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46707464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档