Postgres全文搜索:短语运算符( )距离正在寻找精确的距离匹配项

问题描述 投票:0回答:1

当使用短语运算符(<X>)语法进行全文搜索时,它没有像我期望的那样“小于或等于”该数字。搜索值必须恰好相距那么多位置。

给出此示例:

select *
from (values
  ('bob is really smart, isn''t he?')
) docs(body)
where
  to_tsvector(body) @@ to_tsquery('simple', 'bob <3> smart');

使用<3>返回匹配。但是,其他任何较大的值(即<4><5>)都不匹配。

在Postgres中是否有一些用于平局格斗者的配置设置?

我在AWS上使用RDS Postgres实例:PostgreSQL 9.6.11 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9), 64-bit

postgresql amazon-web-services full-text-search amazon-rds tsvector
1个回答
0
投票
[曾经有一个AROUND(X)函数,它的功能与我期望的相同(

小于或等于),但似乎在某个时候它已从Postgres中删除。

[有些补丁可以创建<X, Y>语法,其中X是最小距离,Y是最大距离。这些在AWS上的RDS实例的上下文中不可行。

Range phrase operator in tsquery (V1 Patch)

© www.soinside.com 2019 - 2024. All rights reserved.