Re: TS: Limited cover density ranking

From: karavelov(at)mail(dot)bg
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: TS: Limited cover density ranking
Date: 2012-01-27 17:01:59
Message-ID: 9232c5812ff1325dc1eed8cab89e26e3.mailbg@mail.bg
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

----- Цитат от karavelov(at)mail(dot)bg, на 27.01.2012 в 18:48 -----

> ----- Цитат от Sushant Sinha (sushant354(at)gmail(dot)com), на 27.01.2012 в 18:32 -----
>
>> The rank counts 1/coversize. So bigger covers will not have much impact
>> anyway. What is the need of the patch?
>>
>> -Sushant.
>>
>
> If you want to find only combinations of words that are close one to another, with the patch you could use something as:
>
> WITH a AS (SELECT to_tsvector('a b c d e g h i j k') AS vec, to_tsquery('a&d') AS query)
> SELECT * FROM a WHERE vec @@ query AND ts_rank_cd(3,vec,query)>0;
>

Another example, if you want to match 'b c d' only, you could use:

WITH A AS (SELECT to_tsvector('a b c d e g h i j k') AS vec, to_tsquery('b&c&d') AS query)
SELECT * FROM A WHERE vec @@ query AND ts_rank_cd(2,vec,query)>0;

The catch is that it will match also 'b d c', 'd c b', 'd b c', 'c d b' and 'd b d', so it is not a
replacement for exact phrase match but something that I find useful

--
Luben Karavelov

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2012-01-27 17:14:38 Re: pg_statistic, lack of documentation
Previous Message Heikki Linnakangas 2012-01-27 16:53:11 Re: patch for parallel pg_dump