PostgreSQL中的子字符串全文搜索

3

我正在使用to_tsquery()从数据库中检索数据,基于文本搜索。我可以获得完整单词搜索的结果,但无法获得子字符串的结果。

例如:

SELECT * FROM snp_gene_context
WHERE protein_name @@ to_tsquery('english','KIN') AND gene_dist='0';

我能够获取包含单词“KIN11”的行,但无法获取包含“Kinase”的行。


进行不区分大小写的搜索。 - undefined
你能解释一下如何在 to_tsquery() 中进行不区分大小写的搜索吗?我现在用 'Kin' 和 'kin' 进行了搜索,结果和上述相同。 - undefined
你真的需要全文搜索吗?为什么不只是搜索'%kin%'呢? - user330315
1
如果您只对前缀匹配感兴趣,您可以使用to_tsquery('kin:*')-- 对于更自定义的包含测试,您可以使用具有pg_trgm索引的like/ilike(正如Tometzky已经提到的)。 - undefined
1个回答

4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接