我在elasticsearch中创建了一个测试索引,其中包含2个日期字段的映射。两个字段都具有自定义格式,如下所示。
{
"test" : {
"mappings" : {
"_doc" : {
"properties" : {
"endTime" : {
"type" : "date",
"format" : "yyyy-MM-dd HH:mm:ss.SSS"
},
"startTime" : {
"type" : "date",
"format" : "yyyy-MM-dd HH:mm:ss.SSS"
}
}
}
}
}
}
我为此样本测试索引加载的数据如下所示。
PUT test/_doc
{
"startTime" : "2019-02-26 00:00:00.000",
"endTime" : "2019-02-27 00:00:00.000"
}
我试图根据范围进行查询,但它不会返回任何结果。我错过了什么吗?我对范围的查询如下。
GET test/_doc/search
{
"query": {
"bool": {
"must": {
"range": {
"endTime": {
"gte": "2019-02-25 00:00:00.000",
"format" : "yyyy-MM-dd HH:mm:ss.SSS"
}
}
}
}
}
}
你有一切正确...除了搜索终点,这是_search
而不是search
GET test/_doc/_search
^
|
add this
另请注意,您可能已创建了一个id为search
的新文档,您可能希望使用DELETE test/_doc/search
将其删除。