[Zope] How do I efficiently join catalog results with other d
ata?
Jay, Dylan
djay@avaya.com
Sat, 28 Jul 2001 15:17:59 +1000
> -----Original Message-----
> From: Casey Duncan [mailto:cduncan@kaivo.com]
> Sent: Saturday, 28 July 2001 8:14 AM
> To: Jay, Dylan
> Cc: 'zope@zope.org'
> Subject: Re: [Zope] How do I efficiently join catalog results
> with other
> data?
>
>
> "Jay, Dylan" wrote:
> >
> > Here is my problem:
> >
> > I have a dynamic per user map of data about various
> objects. I want to do a
> > catalog search, combine the results with my other dynamic
> data and then sort
> > on the dynamic data.
>
> What type of "dynamic data"? Integers, dates, strings, etc?
a tuple of mostly integers and floats.
> >
> > Has anyone tried doing this?
> > How do I do it efficiently, still getting the benifits of
> low memory usage
> > of lazy result sets?
>
> You should make the dynamic data returned from a script and
> add a field
> index to the catalog that calls the script. Then you can use the
> "sort_on" argument to the catalog to sort on the dynamic data.
The set of data is different for every user so this won't work unless I was
willing to have a seperate catalog for every user. Having a seperate catalog
for each user would be fine if I could combine two to searchs of two
different catalogs togeather. and by combine I don't the _plus_ operator you
can use for search results. What I need is a relational join, ie only the
results from both sets where a certain field has the same value on both.
Someone must have tried to do something like this before?