Re: Query parser behavior with AND and negative clause

2016-11-27 Thread Erik Hatcher
If you start a query with '{' then the entire expression uses that qparser. That's why the second one doesn't work - it ignores the AND... stuff. Starting a nested query with a lucene qparser character gets it out of that rut. Erik > On Nov 25, 2016, at 14:23, Sandeep Khanzode > wrot

Re: Query parser behavior with AND and negative clause

2016-11-25 Thread Sandeep Khanzode
WORKS: +{!field f=dateRange1 op=Intersects v='[2016-11-22T12:01:00Z TO  2016-11-22T13:59:00Z]'} +(*:* -{!field f=dateRange2 op=Contains  v='[2016-11-22T12:01:00Z TO 2016-11-22T13:59:00Z]'}) +ConstantScore(IntersectsPrefixTreeFilter(fieldName=dateRange1,queryShape=[2016-11-22T12:01 TO 2016-11-22T

Re: Query parser behavior with AND and negative clause

2016-11-24 Thread Alessandro Benedetti
Hey Sandeep, can you debug the query ( debugQuery=on) and show how the query is parsed ? Cheers On Thu, Nov 24, 2016 at 12:38 PM, Sandeep Khanzode < sandeep_khanz...@yahoo.com.invalid> wrote: > Hi Erick, > The example record contains ...dateRange1 = [2016-11-22T18:00:00Z TO > 2016-11-22T20:00:

Re: Query parser behavior with AND and negative clause

2016-11-24 Thread Sandeep Khanzode
Hi Erick, The example record contains ...dateRange1 = [2016-11-22T18:00:00Z TO 2016-11-22T20:00:00Z], [2016-11-22T06:00:00Z TO 2016-11-22T14:00:00Z]dateRange2 = [2016-11-22T12:00:00Z TO 2016-11-22T14:00:00Z]" The first query works ... which means that it is able to EXCLUDE this record from the r

Re: Query parser behavior with AND and negative clause

2016-11-22 Thread Erick Erickson
_How_ does it "not work"? You haven't told us what you expect .vs. what you get back. Plus a sample doc that that violates your expectations (just the dateRange field) would also help. Best, Erick On Tue, Nov 22, 2016 at 4:23 AM, Sandeep Khanzode wrote: > Hi, > I have a simple query that should

Query parser behavior with AND and negative clause

2016-11-22 Thread Sandeep Khanzode
Hi, I have a simple query that should intersect with dateRange1 and NOT be contained within dateRange2. I have tried the following options: WORKS: +{!field f=dateRange1 op=Intersects v='[2016-11-22T12:01:00Z TO 2016-11-22T13:59:00Z]'} +(*:* -{!field f=dateRange2 op=Contains v='[2016-11-22T12:01