创建同义词词典以添加而不是替换PostgreSQL中的单词



我正在构建一个应用程序,其中我使用PostgreSQL的内置FTS添加了全文搜索功能。该应用程序列出了印度的共同基金。在某些情况下,共同基金公司被收购并更名。我想让人们使用旧名字进行搜索,以防他们没有意识到这一变化。例如,当DHFL基金被PGIM收购时,所有基金都从DHFL更名为PGIM。

为了实现这一点,我创建了一个同义词词典,在其中添加了PGIM作为DHFL的同义词。

然而,我发现这只是用PGIM取代了DHFL。这意味着,在我的查询中,一些仍然保留DHFL名称的旧基金不再返回DHFL一词。

是否有同义词添加单词而不是替换单词的选项,例如DHFL同时搜索DHFL和PGIM?

必须将新字典与to_tsvectorto_tsquery一起使用。然后,DHFL的所有出现都将被两者中的PGIM替换,搜索任一术语都会找到任一字符串。它们将被视为同义词,这正是您想要的。

最新更新