Postgres全文搜索:通过在空白处进行拆分或提供一个令牌数组来生成tsvector



我有一个文本搜索问题,需要系统地搜索生成的文本,即而不是人类书写的自然语言文本。

典型的ts_tovector('english', 'foo bar baz')并不是特别有用。在某些情况下,它会生成标记,我知道这些标记会导致假阳性搜索结果。

相反,我真的只想在一个字符串中提供令牌,其中每个令牌由空格分隔,或者提供一个有序令牌数组。

例如,类似于to_tsvector(array["foo", "bar", "baz"])的东西应该产生三个标记:foobarbaz。这似乎是一件非常基本的事情,但到目前为止,我还没有找到任何关于该功能的明确文档。

这确实是一件基本的事情,您所要做的就是使用simple文本搜索配置:

to_tsvector('simple', 'foo bar baz')

最新更新