From: | Magnus Hagander <magnus(at)hagander(dot)net> |
---|---|
To: | Ottavio Campana <ottavio(at)campana(dot)vi(dot)it> |
Cc: | "'pgsql-general(at)postgresql(dot)org'" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: tokenize string for tsearch? |
Date: | 2007-05-11 07:23:07 |
Message-ID: | 464419DB.80402@hagander.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Ottavio Campana wrote:
> Magnus Hagander wrote:
>> On Mon, May 07, 2007 at 05:31:02PM -0700, Ottavio Campana wrote:
>>> Hi, I'm trying to use tsearch2 for the first time and I'm having a
>>> problem setting up a query
>>>
>>> If I execute
>>>
>>> SELECT * from test_table where ts_desc @@ to_tsquery ('hello&world');
>>>
>>> it works, but I'm having the problem that the string used for the query
>>> is not 'hello&world' but 'hello world', Moreover, it can have an
>>> arbitrary number of spaces between the words, so I cannot just
>>> substitute the spaces with &, because 'hello&&world' gives error.
>>>
>>> What is the safest way transform a string into a list of words "anded"
>>> together?
>> Look at plainto_tsquery().
>
> db=# SELECT plainto_tsquery('default', 'hello word');
> ERROR: function plainto_tsquery("unknown", "unknown") does not exist
> HINT: No function matches the given name and argument types. You may
> need to add explicit type casts.
>
> I'm using 8.1.8 and I don't find plainto_tsquery in tsearch2.sql
>
> What can I do?
Yeah, you need 8.2 for that function. I don't think anybody has tried
backpatching it, but if you want to you can look at the code in 8.2 and
see if you can backpatch it yourself. But the easiest way is certainly
to upgrade to 8.2.
//Magnus
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Munda | 2007-05-11 07:27:00 | Re: Missing magic block |
Previous Message | Chris | 2007-05-11 07:08:20 | Re: backup and restore |