Date Filter on elastic search -


i'm trying create range filter on elastic search using following syntax:

{ "size": 100, "filter": { "and": {   "filters": [     {       "range": {         "listingdate": {           "gt": "15/07/2017 16:08:53"         }       }     }   ] } } } 

the data format is:

"listingdate": "07/07/2015 09:30:00", 

however regardless of filter properties same incorrect results being returned elastic search. have tried adding following format:

"format": "dd/mm/yyyy hh:mm:ss" 

but same incorrect results.

a fuller example is:

{ "size": 100, "sort": [ {   "listingdate": {     "order": "asc"   } } ], "query": { "bool": {   "must": [     {       "query_string": {         "query": "event"       }     },     {       "range": {         "listingdate": {           "gte": "15/07/2015 16:08:53"         }       }     },     {       "range": {         "enddate": {           "gte": "15/07/2015 16:08:53"         }       }     }   ] } }, "filter": { "and": {   "filters": [     {       "terms": {         "departments": [           "2393"         ]       }     }   ] } } }  

in json documents, dates represented strings. elasticsearch uses set of preconfigured formats recognize , parse these strings long value representing milliseconds-since-the-epoch in utc. might possible date field might not listed in set of preconfigured es date formats.

formatted dates parsed using format specified on date field default, can overridden passing format parameter range query.

{     "range" : {         "listingdate" : {             "gte": "07/07/2015 09:30:00",             "format": "dd/mm/yyyy hh:mm:ss"         }     } } 

Comments