lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From William Bell <billnb...@gmail.com>
Subject Re: Issue with if() statement
Date Fri, 01 Jan 2016 20:52:15 GMT
Sure.

If the state:NY returns results filter by state:NY, if it does not, then
use state:CO. If we have results in NY, use it, otherwise use CO.

OK?

On Fri, Jan 1, 2016 at 1:15 PM, Upayavira <uv@odoko.co.uk> wrote:

>
>
> On Thu, Dec 31, 2015, at 11:50 PM, William Bell wrote:
> > We are getting weird results with if(exists(a),b,c). We are getting b+c!!
> >
> >
> http://localhost:8983/solr/providersearch/select?q=*:*&wt=json&state=state:%22CO%22&state1=state:%22NY%22&fq=if(exists(query($state1)),{!lucene%20v=$state1},{!lucene%20v=$state})
> >
> > I am getting NY and CO!
> >
> > I only want $state1, which is NY.
> >
> > Any other ways to craft this?
>
> Does this work at all?
>
> The if() function is a function query that can be used to sort, boost
> and as calculated fields. I haven't seen them used in filtering.
>
> Also, the query() function does *not* do a query, it just says "what
> would this document score for this query?"
>
> Can you describe in English what you are trying to do?
>
> Upayavira
>



-- 
Bill Bell
billnbell@gmail.com
cell 720-256-8076

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message