我正在尝试修改这个无痛脚本,以便可以从嵌套结构中检索 MAX 日期。
假装我有这样的映射:
{
"mappings": {
"hello": {
"properties": {
"field1": {"type" : "date", "format" : "yyyy-MM-dd HH:mm:ss"},
"field2": {"type" : "date", "format" : "yyyy-MM-dd HH:mm:ss"},
"test": { "type": "nested",
"properties": {
"field3": {"type" : "date", "format" : "yyyy-MM-dd HH:mm:ss"},
"field4": {"type": "integer"},
"test2": { "type": "nested",
"properties": {
"field5": {"type" : "date", "format" : "yyyy-MM-dd HH:mm:ss"}
}
}
}
}
}
}
}
}
我想要做的是从 test.field3 中检索 MAX 日期
我尝试了一些方法,例如:
Date maxDate
for (int i = 0; i < params._source['test'].size(); i++) {
if (params._source['test'][i].field3 > score) {
maxDate= params._source['test'][i].field3
}
} return maxDate
任何帮助都会非常有帮助!我觉得我遇到了日期解析问题,但也许我错了。
如果有人感到游戏,这是一个文件:
{
"field1" : "2018-01-02 10:00:00",
"field2" : "2018-01-04 10:00:00",
"test": [
{
"field3": "2018-01-04 10:00:00",
"field6": 1,
"test2": [{
"field4": "2018-01-04 10:00:00"
}
]
}
]
}