2016-08-21 47 views
0

對於每一個文件我有一個數組類算,它看起來像這樣:ElasticSearch:逐項陣列

[{ 
    "id": 1, 
    "level": 1 
}, { 
    "id": 2, 
    "level": 2 
}, { 
    "id": 3, 
    "level": 3 
}] 

我怎麼能根據級別3 category.id計算每個文檔中我的類別?

+0

請添加更多信息或張貼連同模式將good.thx查詢 – user3775217

回答

0

類別數組應爲嵌套字段。其餘的可以通過聚合來處理。嘗試類似於下面給出的代碼。

"aggregations": { 
"mainAgg": { 
    "nested": { 
    "path": "category" 
    }, 
    "aggs": { 
    "levelFilter": { 
     -- filter condition 
     "filter": { 
     "term": { 
      "level": 3 
     }, 
      -- count aggregation 
     "aggs": { 
      "count": { 
      "value_count": { 
       "field": "level" 
      } 
      } 
     } 
     } 
    } 
    } 
} 

}