2016-11-07 56 views
0

我正在使用ElasticSearch並嘗試查找所有唯一作者。以及所有獨特作者的總長度。ElasticSearch查找基數查詢中的總長度

例如,

作者: 「威廉斯」 長度:100

作者 「奇」 長度:200

作者 「羅恩」 長度:100

作者: 「威廉姆斯」 長度:200

我會ex獨立作者2和總長度爲300.

我試過了下面的代碼;

"size": 0, 
    "aggs": { 
     "red_products": { 
     "cardinality": { 
      "field": "author" 
     }, 
     "aggs": { 
      "total": { 
       "sum": { 
        "field": "length" 
       } 
      } 
     } 
     } 
    } 
} 

,但我得到一個錯誤信息說聚集[red_products]類型[基數]不能接受子聚合。

而且我試着用全長的第一個,然後獨特的作者給了我正確的獨特的作者,但給我每本書的總長度。

任何想法?

回答

0

我想你可以試試這個:

"aggs": { 
    "2": { 
    "terms": { 
     "field": "author", 
     "size": 5, 
     "order": { 
     "1": "desc" 
     } 
    }, 
    "aggs": { 
     "1": { 
     "sum": { 
      "field": "length" 
     } 
     } 
    } 
    } 
}