Search Postgresql Archives

Re: FTS phrase searches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I guess no response means it's not possible.  I ended up doing a
manual substring match for quoted strings, but that's a poor hack.
Maybe I'll take a poke at implementing something like
tsvector_contains_phrase; it seems like a natural extension of what's
in there now.


On Mon, Nov 1, 2010 at 4:35 PM, Glenn Maynard <glenn@xxxxxxxx> wrote:
> How are adjacent word searches handled with FTS? Âtsquery doesn't do
> this, so I assume this has to be done as a separate filter step, eg.:
>
> Â# "large house" sales
> ÂSELECT * FROM data WHERE fts @@ to_tsquery('large & house & sales')
> AND tsvector_contains_phrase(fts, to_tsvector('large house')));
>
> to do an indexed search for "large & house & sales" and then to narrow
> the results to where "large house" actually appears as a phrase (eg.
> adjacent positions at the same weight). ÂI can't find any function to
> do that, though. Â(Presumably, it would return true if all of the
> words in the second tsvector exist in the first, with the same
> positions relative to each other.)
>
> "tsvector <@ tsvector" seems logical, but isn't supported.
>
> This isn't as simple as using LIKE, since that'll ignore stemming,
> tokenization rules, etc. ÂIf the language rules allow this to match
> "larger house" or "large-house", then a phrase restriction should,
> too. ÂIt's also painful when the FTS column is an aggregate of several
> other columns (eg. title and body), since a LIKE match needs to know
> that and check all of them separately.
>
> Any hints? ÂThis is pretty important to even simpler search systems.

-- 
Glenn Maynard

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux