相关疑难解决方法(0)

你如何利用全文索引在postgres中进行基于短语的全文搜索?

假设您有一个postgres 8.3表,如下所示:

CREATE TABLE t1 (body text, body_vector tsvector);

我希望能够使用全文索引(Give,GiN或tsvector列上的两者)搜索短语.我能找到的最好的解决方法是首先对两个单词进行全文搜索(布尔AND),然后在短语的主体上进行相似的比较.当然,这无法捕获postgres的全文搜索为您做的任何词干或拼写检查.这方面的一个例子是,如果我正在搜索短语'w1 w2',我会使用:

SELECT * FROM t1 WHERE body_vector @@ 'w1 & w2'::tsquery AND body LIKE 'w1 w2';

有没有办法在不必求助于搜索文本列的情况下执行此操作?

postgresql full-text-search

13
推荐指数
2
解决办法
7077
查看次数

建议像google与postgresql三元组和全文搜索

我想像google建议一样进行文本搜索.

因为神奇的Postgis,我正在使用PostgreSQL.

我正在考虑使用FTS,但我发现它无法搜索部分单词,所以我发现了这个问题,并看到了三元组的工作方式.

主要问题是我正在研究的搜索引擎是用于西班牙语.FTS在词干和词典(同义词,拼写错误),UTF等方面表现出色.Trigrams适用于部分单词,但它们只适用于ASCII,并且(显然)它们不使用字典之类的东西.

我在想是否有任何方式可以使用两者中最好的东西.

是否可以使全文搜索和Trigrams在PGSQL中一起工作?

postgresql full-text-search trigraphs

8
推荐指数
1
解决办法
2701
查看次数

标签 统计

full-text-search ×2

postgresql ×2

trigraphs ×1