2017-12-13 5 views
0

弾性検索で4列を合計する方法 例:弾性検索で複数の列を合計する方法

A B C 
1 1 1 
1 2 2 

A = 2の和、B = 3の合計、C = 3の合計とtotal(A,B,C) = 8の合計。

合計を取得する方法は? 私は集計クエリを行っているが、それはあなたがこのようなスクリプトを使用する必要が私にUnexpected token START_ARRAY

{ 
    "aggs": { 
    "total_count": { 
     "sum": { 
     "base_count": { 
      "sum": { 
      "field": "cse_licenseactivated_base_count" 
      } 
     }, 
     "malware_count": { 
      "sum": { 
      "field": "cse_licenseactivated_malware_count" 
      } 
     }, 
     "threat_count": { 
      "sum": { 
      "field": "cse_licenseactivated_threat_count" 
      } 
     }, 
     "urlfiltering_count": { 
      "sum": { 
      "field": "cse_licenseactivated_urlfiltering_count" 
      } 
     } 
     } 
    } 
    } 
} 

答えて

1

を投げている:

{ 
    "aggs": { 
    "total_count": { 
     "sum": { 
     "source": "doc.cse_licenseactivated_base_count.value + doc.cse_licenseactivated_malware_count.value + doc.cse_licenseactivated_threat_count.value + doc.cse_licenseactivated_urlfiltering_count.value" 
     } 
    } 
    } 
} 

それとも、また、インデックスの時間と店で、すべてのこれらのフィールドを合計することができますcse_licenseactivated_total_countと呼ばれる別のフィールドの合計です。より良い方法です。

関連する問題