假设您有一个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';
有没有办法在不必求助于搜索文本列的情况下执行此操作?