lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grant Ingersoll <gsing...@apache.org>
Subject Re: nested queries
Date Thu, 19 Nov 2009 13:21:31 GMT

On Nov 19, 2009, at 7:02 AM, Andrea Campi wrote:

> Hi,
> 
> I'm trying to wrap my head around nested queries and I'm having some trouble figuring
out how far can I go with them. I have to say documentation is still a bit sparse... :/
> 
> 
> I'm trying to build a query that would search the same term(s) on different fields with
different boosts, like:
> 
> text:something OR ftext:something^1000
> 
> In addition I am adding a function query to manipulate the score further.
> 
> 
> To make things easier and more maintainable, I'd like to use nested queries for that;
I'd like to be able to write:
> 
> q={!boost b=$dateboost v=ftext:$terms^1000 OR text:$terms}&dateboost=product(...etc.)&terms=something
> 
> Or even better:
> 
> q={!boost b=$dateboost v=$qq}&qq={!query v=ftext:$terms^1000 OR text:$terms}&dateboost=product(...etc.)&terms=something
> 
> 
> I tried both of the above (and some other variations, with parenthesis etc) but it looks
like variables are replaced only if they are the only thing that appears after a v=.
> For instance, this works perfectly:
> 
> q={!boost b=$dateboost v=$qq}&qq={!query v=$terms}&dateboost=product(...etc.)&terms=something
> 
> whereas even this fails:
> 
> q={!boost b=$dateboost v=$qq}&qq={!query v=text:$terms}&dateboost=product(...etc.)&terms=something
> 
> 
> Do you guys see any way to obtain what I want--or to do it better?

Sounds like you might benefit from using the Dismax Parser.  You can specify the field boosting
thing in your config and also add the bf (boost function) capability.




Mime
View raw message