【发布时间】:2016-03-09 00:02:32
【问题描述】:
我在弹性查询中添加了一个名为“age”的脚本文件,其定义如下:
"script_fields" : {
"age" : {
"script" : "DateTime.now().year - doc['date_of_birth'].date.year"
}
}
现在,我还为每个人设置了其他字段,称为“myscore”。 我正在尝试在 myscore 上进行聚合,并创建一个年龄的子聚合。 我应该想看到的结果是这样的:
key: 25
buckets: [
67,
70,
74
]
key: 62
buckets: [
45
]
我添加了这个聚合:
{
"myagg": {
"terms": {
"field": "myscore",
"size": 1000,
"order": {
"_count": "desc"
}
},
"aggregations": {
"inner": {
"terms": {
"field": "age",
"size": 1000
}
}
}
}
}
但是年龄的内部桶返回空(在命中本身我可以看到年龄字段)......
有什么想法吗?
【问题讨论】:
标签: elasticsearch groovy aggregation