lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Rochkind <>
Subject Re: Set operations on multiple queries with different qf parameters
Date Tue, 17 May 2011 15:22:44 GMT
One way to do it might be to use the Solr 'nested query' functionality.

Not entirely sure this will work exactly as I've written it, but give 
you some ideas of what nested query can do.  Note not fully URL-encoded 
for clarity:

&defType=lucene&q= _query_:"{!edismax qf='p,q,r' fq='field1:xyz'}abc 
def" AND _query_:"{!edismax mm=100% qf='q, r, s'}jlk"

On 5/17/2011 2:55 AM, Nikhil Chhaochharia wrote:
> Hi,
> I am using Solr 3.1 with edismax.  My frontend allows the user to create arbitrarily
complex queries by modifying q, fq, qf and mm (only 1 and 100% are allowed) parameters.  The
queries can then be saved by the user.
> The user should be able to perform set operations on the saved searches.  For example,
the user may want to see all documents which are returned both by saved search 1 and saved
search 2 (equivalent to intersection of the two).
> If the saved searches contain q, fq and/or mm, then I can combine the saved searches
to create a new query which will be equivalent to their intersection.  However, I can't figure
out how to handle qf?
> For example,
> Query 1 = q=abc def&fq=field1:xyz&mm=1&qf=p,q,r
> Query 2 = q=jkl&mm=100%&qf=q,r,s
> How do I get the list of common documents which are present in the result set of both
> Thanks,
> Nikhil

View raw message