在一定条件下,我们可能对 更深 的度量进行排序,比如孙子桶或从孙桶。
我们可以定义更深的路径,将度量用尖括号( > )嵌套起来,像这样: my_bucket>another_bucket>metric 。
需要提醒的是嵌套路径上的每个桶都必须是 单值 的。 filter 桶生成 一个单值桶:所有与过滤条件匹配的文档都在桶中。 多值桶(如:terms )动态生成许多桶,无法通过指定一个确定路径来识别。
目前,只有三个单值桶: filter 、 global 和 reverse_nested。
请求:
"devEnv" :
{
"terms" : {
"field" : "devEnv",
"size" : 15,
"order" : {
"hitOne" : "desc"
}
},
"aggregations" : {
"hitOne" : {
"filter" : {
"term" : {
"hit" : "1"
}
}
}
}
}
响应:
"devEnv": {
"doc_count_error_upper_bound": -1,
"sum_other_doc_count": 2972603,
"buckets": [
{
"key": "",
"doc_count": 8433036,
"hitOne": {
"doc_count": 1127957
}
}
,
{
"key": "2dbee12531e36d8ef1fa691418d75ec5cb14a4bc",
"doc_count": 522,
"hitOne": {
"doc_count": 368
}
}
]
}
结果就会根据hitOne下的doc_count倒序排列,默认是按照hitOne上面的doc_count倒序排列