Incorrect Date Range Query Result

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/3865ceef-bdc4-4f31-a1ff-e4c574497853%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/3f1ab138-df69-484a-a39f-ccd4579f634a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Same problem. :frowning:

On Thursday, April 9, 2015 at 6:25:25 PM UTC+5, Jan Wolf wrote:

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/65a49d2f-8aa8-4252-84ca-5bb6391bf6b3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hmmm strange. Well I if you don't need scoring you should also use filters
instead of queries. Try this one (works for me):

"query" : {
"filtered" : {
"query" : {
"query_string" : {
"query" : "*"
}
},
"filter" : {
"bool" : {
"must" : {
"range" : {
"DateTime" : {
"gt" : "....",
"lte" : "...."
}
}
}
}
}
}
}

Am Donnerstag, 9. April 2015 15:27:08 UTC+2 schrieb James Crone:

Same problem. :frowning:

On Thursday, April 9, 2015 at 6:25:25 PM UTC+5, Jan Wolf wrote:

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/58895cc8-f680-44ea-9ded-96af0dae36cf%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

I have try but same problem. I think this add +1 in date because when i try
date b/w 2015-03-01 to 2015-03-08 then it return null. and when i try
2015-03-10 it returns data of 2015-03-10 and 2015-03-11 too. What You say?

On Thursday, April 9, 2015 at 7:44:51 PM UTC+5, Jan Wolf wrote:

Hmmm strange. Well I if you don't need scoring you should also use filters
instead of queries. Try this one (works for me):

"query" : {
"filtered" : {
"query" : {
"query_string" : {
"query" : "*"
}
},
"filter" : {
"bool" : {
"must" : {
"range" : {
"DateTime" : {
"gt" : "....",
"lte" : "...."
}
}
}
}
}
}
}

Am Donnerstag, 9. April 2015 15:27:08 UTC+2 schrieb James Crone:

Same problem. :frowning:

On Thursday, April 9, 2015 at 6:25:25 PM UTC+5, Jan Wolf wrote:

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/e9b1cf3f-d864-4142-935c-c35c9cf9a50b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

In this case you could just replace "lte" with "lt" if I'm not wrong.
Otherwise you have to wait for someone other to answer.

Am Donnerstag, 9. April 2015 16:53:33 UTC+2 schrieb James Crone:

I have try but same problem. I think this add +1 in date because when i
try date b/w 2015-03-01 to 2015-03-08 then it return null. and when i try
2015-03-10 it returns data of 2015-03-10 and 2015-03-11 too. What You say?

On Thursday, April 9, 2015 at 7:44:51 PM UTC+5, Jan Wolf wrote:

Hmmm strange. Well I if you don't need scoring you should also use
filters instead of queries. Try this one (works for me):

"query" : {
"filtered" : {
"query" : {
"query_string" : {
"query" : "*"
}
},
"filter" : {
"bool" : {
"must" : {
"range" : {
"DateTime" : {
"gt" : "....",
"lte" : "...."
}
}
}
}
}
}
}

Am Donnerstag, 9. April 2015 15:27:08 UTC+2 schrieb James Crone:

Same problem. :frowning:

On Thursday, April 9, 2015 at 6:25:25 PM UTC+5, Jan Wolf wrote:

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/b2271a25-bc00-4224-8695-c21aac8c8399%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yes I am waiting. Its very important
On Apr 9, 2015 8:29 PM, "Jan Wolf" janwolf539@gmail.com wrote:

In this case you could just replace "lte" with "lt" if I'm not wrong.
Otherwise you have to wait for someone other to answer.

Am Donnerstag, 9. April 2015 16:53:33 UTC+2 schrieb James Crone:

I have try but same problem. I think this add +1 in date because when i
try date b/w 2015-03-01 to 2015-03-08 then it return null. and when i try
2015-03-10 it returns data of 2015-03-10 and 2015-03-11 too. What You say?

On Thursday, April 9, 2015 at 7:44:51 PM UTC+5, Jan Wolf wrote:

Hmmm strange. Well I if you don't need scoring you should also use
filters instead of queries. Try this one (works for me):

"query" : {
"filtered" : {
"query" : {
"query_string" : {
"query" : "*"
}
},
"filter" : {
"bool" : {
"must" : {
"range" : {
"DateTime" : {
"gt" : "....",
"lte" : "...."
}
}
}
}
}
}
}

Am Donnerstag, 9. April 2015 15:27:08 UTC+2 schrieb James Crone:

Same problem. :frowning:

On Thursday, April 9, 2015 at 6:25:25 PM UTC+5, Jan Wolf wrote:

I would try "must" instead of "should" :slight_smile:

Am Dienstag, 7. April 2015 10:55:01 UTC+2 schrieb James Crone:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to a topic in the
Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/elasticsearch/I38DgJxqS9U/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/b2271a25-bc00-4224-8695-c21aac8c8399%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/b2271a25-bc00-4224-8695-c21aac8c8399%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CABjqkR8JRe3YGSkxm%2BZVJsCCM0qTeEc8W7E0%2B9E4ftVCVLzjHA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Hi,

The timestamp of the event has timezone +05:00 specified, which translates
to 2015-03-09T19:00:00.000 when converted to UTC. As Elasticsearch uses UTC
internality default it looks to me that the result is correct as you have
not specified any timezone in the query.

Christian

On Tuesday, April 7, 2015 at 9:55:01 AM UTC+1, James Crone wrote:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/26d053f7-6c7a-41ec-a752-9bef6d1bf4e4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

So, how can I define time zone in my query?
On Apr 10, 2015 12:57 AM, christian@elastic.co wrote:

Hi,

The timestamp of the event has timezone +05:00 specified, which translates
to 2015-03-09T19:00:00.000 when converted to UTC. As Elasticsearch uses UTC
internality default it looks to me that the result is correct as you have
not specified any timezone in the query.

Christian

On Tuesday, April 7, 2015 at 9:55:01 AM UTC+1, James Crone wrote:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to a topic in the
Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/elasticsearch/I38DgJxqS9U/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/26d053f7-6c7a-41ec-a752-9bef6d1bf4e4%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/26d053f7-6c7a-41ec-a752-9bef6d1bf4e4%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CABjqkR8eRJbOx4A6_Or9otCsKpuzuXBFq0TCOtO6nAc3HWR3_Q%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Hi,

The ability to specify time zone as part of the query was added for the
1.4.0 release [1]. Assuming you are on 1.4.0 or later, your query should
look like this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09",
"time_zone":"+05:00"
}
}
}
]
}
}
}

[1] Add time zone setting for relative date math in range filter/query by dadoonet · Pull Request #7113 · elastic/elasticsearch · GitHub

Best regards,

Christian

On Tuesday, April 7, 2015 at 9:55:01 AM UTC+1, James Crone wrote:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/249d02b3-26d5-4288-92ef-b25d9ce9a64b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Thank You Soo much :slight_smile:

On Sat, Apr 11, 2015 at 1:22 PM, christian@elastic.co wrote:

Hi,

The ability to specify time zone as part of the query was added for the
1.4.0 release [1]. Assuming you are on 1.4.0 or later, your query should
look like this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09",
"time_zone":"+05:00"
}
}
}
]
}
}
}

[1] Add time zone setting for relative date math in range filter/query by dadoonet · Pull Request #7113 · elastic/elasticsearch · GitHub

Best regards,

Christian

On Tuesday, April 7, 2015 at 9:55:01 AM UTC+1, James Crone wrote:

Hello!

My query is this:

GET _search
{
"query": {
"bool": {
"should": [
{
"range": {
"DateTime": {
"gt": "2015-03-01",
"lte": "2015-03-09"
}
}
}
]
}
}
}
Result is:

{
"took": 2,
"timed_out": false,
"_shards": {
"total": 11,
"successful": 11,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "completedata",
"_type": "users",
"_id": "1",
"_score": 1,
"_source": {
"ID": 1,
"User_ID": 1,
"Name": "Saudia Arabia Bomb",
"Text": "Saudia Arabia Bomb",
"Status": "online",
"DateTime": "2015-03-10T00:00:00.000+05:00",
"categories_ID": 1
}
}
]
}
}

mapping for date is:

"DateTime" : {
"type" : "date",
"format" : "dateOptionalTime"
}

It returns me the result of "2015-03-10".How can i get exact result by matching Date? Any Idea?

--
You received this message because you are subscribed to a topic in the
Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/elasticsearch/I38DgJxqS9U/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/249d02b3-26d5-4288-92ef-b25d9ce9a64b%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/249d02b3-26d5-4288-92ef-b25d9ce9a64b%40googlegroups.com?utm_medium=email&utm_source=footer
.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CABjqkR8dQAo%2B_ZE0XhMSW9qBWh8qprYCyY%3DJyNbXKT2zX1Rrhg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.