Example.

http://localhost:8983/solr/providersearch/select?wt=json&state=state:%22CO%22&state1=state:%22NY%22&fl=ss,score&q=*:*&fq={!lucene%20v=$state1}

This return 236,000

http://localhost:8983/solr/providersearch/select?wt=json&state=state:%22CO%22&state1=state:%22NY%22&fl=ss,score&q=*:*&fq={!lucene%20v=$state}

This returns 10,000

I want to put an IF statement around which v to use.






On Fri, Jan 1, 2016 at 1:52 PM, William Bell <billnb...@gmail.com> wrote:

> 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 <u...@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})
>> <http://localhost:8983/solr/providersearch/select?q=*:*&wt=json&state=state:%22CO%22&state1=state:%22NY%22&fq=if(exists(query($state1)),%7B!lucene%20v=$state1%7D,%7B!lucene%20v=$state%7D)>
>> >
>> > 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
> billnb...@gmail.com
> cell 720-256-8076
>



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

Reply via email to