日期范围查询 Elasticsearch
Date Range Query Elasticsearch
在 Elasticsearch 版本 1.x
中执行时的以下查询
正在考虑 2016 年 6 月 15 日之后创建的文档,即 6 月 15 日凌晨 12 点以后的文档/2016.It 正在考虑 2016 年 6 月 15 日之前的文档 23:59:59 .999 .
但是对于新版本的 ES 2.x,范围查询已停止考虑时间超过 2016 年 6 月 15 日凌晨 12 点的文档。现在正在考虑 2016 年 6 月 14 日之前的文件 23:59:59.999.
这里到底发生了什么变化?
{
"from": 0,
"size": 10,
"sort": [
{
"PRONumber.sort": {
"order": "desc"
}
}
],
"query": {
"bool": {
"must": [
{
"match": {
"BOLNumber": {
"query": "7861254",
"analyzer": "gtz_search_analyzer",
"operator": "and"
}
}
},
{
"range": {
"CreatedDate": {
"gte": "1753-01-01",
"lte": "2016-06-15"
}
}
}
]
}
}
}
在 elasticsearch 2.x 中,对于 OP 中的查询,上限是 6/15/2016 00:00:00.000
而不是 6/14/2016 23.59.59.999
。
从 documentation 可以看出,您需要在 round-up
的查询中明确指定日期,如下面的示例
所示
示例:
{
"from": 0,
"size": 10,
"sort": [
{
"PRONumber.sort": {
"order": "desc"
}
}
],
"query": {
"bool": {
"must": [
{
"match": {
"BOLNumber": {
"query": "7861254",
"analyzer": "gtz_search_analyzer",
"operator": "and"
}
}
},
{
"range": {
"CreatedDate": {
"gte": "1753-01-01",
"lte": "2016-06-15||/d"
}
}
}
]
}
}
}
在 Elasticsearch 版本 1.x
中执行时的以下查询正在考虑 2016 年 6 月 15 日之后创建的文档,即 6 月 15 日凌晨 12 点以后的文档/2016.It 正在考虑 2016 年 6 月 15 日之前的文档 23:59:59 .999 .
但是对于新版本的 ES 2.x,范围查询已停止考虑时间超过 2016 年 6 月 15 日凌晨 12 点的文档。现在正在考虑 2016 年 6 月 14 日之前的文件 23:59:59.999.
这里到底发生了什么变化?
{
"from": 0,
"size": 10,
"sort": [
{
"PRONumber.sort": {
"order": "desc"
}
}
],
"query": {
"bool": {
"must": [
{
"match": {
"BOLNumber": {
"query": "7861254",
"analyzer": "gtz_search_analyzer",
"operator": "and"
}
}
},
{
"range": {
"CreatedDate": {
"gte": "1753-01-01",
"lte": "2016-06-15"
}
}
}
]
}
}
}
在 elasticsearch 2.x 中,对于 OP 中的查询,上限是 6/15/2016 00:00:00.000
而不是 6/14/2016 23.59.59.999
。
从 documentation 可以看出,您需要在 round-up
的查询中明确指定日期,如下面的示例
示例:
{
"from": 0,
"size": 10,
"sort": [
{
"PRONumber.sort": {
"order": "desc"
}
}
],
"query": {
"bool": {
"must": [
{
"match": {
"BOLNumber": {
"query": "7861254",
"analyzer": "gtz_search_analyzer",
"operator": "and"
}
}
},
{
"range": {
"CreatedDate": {
"gte": "1753-01-01",
"lte": "2016-06-15||/d"
}
}
}
]
}
}
}