Thread: Handling Complex queries in PostgreSQL fulltext search

Handling Complex queries in PostgreSQL fulltext search

From
Gaini Rajeshwar
Date:
Hi All,

Does anyone know how to handle complex queries?

For Example, If i want to search for something like:

(portable battery AND magnetic induction) OR (database management system)

This is a sample query and user can specify any kind of complex query in this way. I can't ask user to specify &, |, ! operators. Instead i can ask to use AND, OR, NOT operators. If nothing is specified by default & operator should be used.

Is there any way to convert/specify user given query in Fulltext Search.

For Example, In Sphinx I can give the same query as

'(portable battery && magnetic induction) | (database management system)'

Here i need not to mention the & operator between portable, battery.

Is there any way we can specify this in PostgreSQL Fulltext search (i.e without bothering about inserting & operator in between)?

Thanks,

Gaini Rajeshwar

Re: Handling Complex queries in PostgreSQL fulltext search

From
Guillaume Lelarge
Date:
Le dimanche 1 novembre 2009 à 09:50:29, Gaini Rajeshwar a écrit :
> Hi All,
>
> Does anyone know how to handle complex queries?
>
> For Example, If i want to search for something like:
>
> *(portable battery AND magnetic induction) OR (database management system)*
>
> This is a sample query and user can specify any kind of complex query in
> this way. I can't ask user to specify *&, |, !* operators. Instead i can
>  ask to use *AND, OR, NOT* operators. If nothing is specified by default
>  *&*operator should be used.
>
> Is there any way to convert/specify user given query in Fulltext Search.
>

No, but the tool they use can do the translation work: replacing AND with an
ampersand, OR with |, etc.

> For Example, In Sphinx I can give the same query as
>
> *'(portable battery && magnetic induction) | (database management system)'
>
> *Here i need not to mention the & operator between *portable, battery.
>
> *Is there any way we can specify this in PostgreSQL Fulltext search (i.e
> without bothering about inserting & operator in between)?
>

Not yet.


--
Guillaume.
 http://www.postgresqlfr.org
 http://dalibo.com