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 14:41:54 |
Message-ID: | 3B068632.789A11D3@mohawksoft.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tatsuo Ishii wrote:
>
> > I have an external search engine system which plugs in to postgres. I use a few
> > C functions to interface the search daemon with the Postgres back-end.
> >
> > The best that I have been able to do is do a "select" for each result. I have a
> > live demo/test site:
> >
> > http://www.mohawksoft.com/search.php3, and the PHP source code is at
> > http://www.mohawksoft.com/ftss_example.txt.
> >
> > I would love to get the results with one select statement, but have, to date,
> > been unable to figure out how. Anyone with any ideas?
>
> It's possible to return a set of results from C functions using the
> new function manager in 7.1 or later. Take a look at following email
> in the archive.
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?
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2001-05-19 14:44:13 | Re: Plans for solving the VACUUM problem |
Previous Message | Tom Lane | 2001-05-19 14:28:07 | Re: [COMMITTERS] pgsql/ oc/src/sgml/runtime.sgml rc/backend/uti ... |