gpt4 book ai didi

postgresql - 全文 Postgres

转载 作者:行者123 更新时间:2023-11-29 12:46:51 29 4
gpt4 key购买 nike

我在 postgresql 中创建了一个用于全文搜索的索引。

CREATE INDEX pesquisa_idx 
ON chamado
USING
gin(to_tsvector('portuguese', coalesce(titulo,'') || coalesce(descricao,'')));

当我运行这个查询时:

SELECT * FROM chamado WHERE to_tsvector('portuguese', titulo) @@ 'ura'

它返回给我一些行。

但是当我的参数全部大写时,不会返回任何行。例如:

SELECT * FROM chamado WHERE to_tsvector('portuguese', titulo) @@ 'URA'

当参数是“ura”时,我得到几行;当参数为“URA”时,我没有得到任何行。

为什么会这样?

最佳答案

由于 to_tsvector() 将所有词素小写,因此在第二种情况下您无法找到匹配项。使用 to_tsquery() 构建查询,它也会处理大小写问题:

SELECT * FROM chamado WHERE to_tsvector('portuguese', titulo) @@ to_tsquery('portuguese', 'URA')

关于postgresql - 全文 Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16308363/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com