Postgresql不会完全忽略停用词

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

有没有一种方法可以使用Postgres全文搜索,并使其不完全忽略停用词,但将其排名较低。就像我可以只生成停用词的ts_vector并将其添加到排名较低的排名中一样。例如,我希望能够有类似“这就是你怎么输..”这样的东西,并能够搜索“这就是你怎么输”并找到匹配项。

我最初的想法是制作一本不忽略停用词的字典,并且在权重上降低权重是真的很愚蠢

sql postgresql full-text-search
1个回答
0
投票

对于我们示例中的简短文本,我想知道pg_trgm是否不是比FTS更好的选择。

您的想法并不愚蠢,但这可能需要大量工作。只是一些SQL命令使其不使用停用词,但是实现自定义排名功能来减轻它们的权重可能并不简单。也许您可以只使用setweight的3个参数形式,并将所有停用词填充到第3个参数中来减轻它们的重量。然后使用内置的排名功能之一。在研究完全自定义的功能之前,我至少要尝试一下。

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