Re: External search engine, advice

From: mlw <markw(at)mohawksoft(dot)com>
To: Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: External search engine, advice
Date: 2001-05-19 16:18:40
Message-ID: 3B069CE0.EC994CF0@mohawksoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tatsuo Ishii wrote:
>
> > Well, I kind of have that already. I can return a set, but I can't use it in a
> > join.
> >
> > freedb=# select ftss_search('all { pink floyd money }') ;
> > ftss_search
> > -------------
> > 120
> > (1 row)
> >
> > freedb=# select * from cdsongs where songid = ftss_results() ;
> > ERROR: Set-valued function called in context that cannot accept a set
> >
> > How do you join against a set?
>
> Well, assuming that ftss_results() returns a set of songid, you could
> do something like:
>
> select * from cdsongs where songid in (select ftss_results());

That, however, does not use the songid index, thus it renders the text search
engine useless.

>
> BTW, what's the difference between ftss_search and ftss_results?

ftss_search executes the search to the external engine, and returns the number
of results. ftss_results returns the set of results.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Myron Scott 2001-05-19 17:09:59 Re: C++ Headers
Previous Message mlw 2001-05-19 16:15:41 Re: External search engine, advice