Thread: Tsearch2 - Error using tsquery object in GROUP BBY queries

Tsearch2 - Error using tsquery object in GROUP BBY queries

From
Henrik Zagerholm
Date:
Hello list,

I've set up tsearch2 to handle full-text searches (obviously :)).

I have a problem I can't find a solution to and it feels its tsquery
objects fault.

The query I'm executing has a GROUP BY clause and because I'm using
the headline function I need my tsquery object in the SELECT clause
and therefor also in the GROUP BY clause.
BUT when executing the query I get the following error. -> "could not
identify an ordering operator for type tsquery"

How do I solve this?

Regards,
Henrik



Re: Tsearch2 - Error using tsquery object in GROUP BBY

From
Teodor Sigaev
Date:
> The query I'm executing has a GROUP BY clause and because I'm using the
> headline function I need my tsquery object in the SELECT clause and
> therefor also in the GROUP BY clause.
> BUT when executing the query I get the following error. -> "could not
> identify an ordering operator for type tsquery"

Which version do you use? Only 8.2 will have comparison operator for tsquery.

>
> How do I solve this?
Use subselect:
SELECT *, headline(..., to_tsquery()) FROM
{
    SELECT .... GROUP BY ...
);

BTW, for performance reason, it might be useful to use limit in inner select -
headline function is slow enough.


--
Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                    WWW: http://www.sigaev.ru/

Re: Tsearch2 - Error using tsquery object in GROUP BBY

From
Henrik Zagerholm
Date:
1 dec 2006 kl. 09:56 skrev Teodor Sigaev:

>> The query I'm executing has a GROUP BY clause and because I'm
>> using the headline function I need my tsquery object in the SELECT
>> clause and therefor also in the GROUP BY clause.
>> BUT when executing the query I get the following error. -> "could
>> not identify an ordering operator for type tsquery"
>
> Which version do you use? Only 8.2 will have comparison operator
> for tsquery.
I'm using 8.1.4 at the moment but I guess I need to update. The 8.2
is looking really promising. So with 8.2 I don't need the subselect?
>
>> How do I solve this?
> Use subselect:
> SELECT *, headline(..., to_tsquery()) FROM
> {
>     SELECT .... GROUP BY ...
> );
Thanks I'll try it.
>
> BTW, for performance reason, it might be useful to use limit in
> inner select -
> headline function is slow enough.
You think?! ;)
Thanks again for your quick reply.
Cheers, Henrik
>
>
> --
> Teodor Sigaev                                   E-mail:
> teodor@sigaev.ru
>                                                    WWW: http://
> www.sigaev.ru/
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 6: explain analyze is your friend


Re: Tsearch2 - Error using tsquery object in GROUP BBY

From
Teodor Sigaev
Date:
> I'm using 8.1.4 at the moment but I guess I need to update. The 8.2 is
> looking really promising. So with 8.2 I don't need the subselect?

IMHO, don't need

>> headline function is slow enough.
> You think?! ;)

I known :) - computing headline is a hard task
--
Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                    WWW: http://www.sigaev.ru/