現在、次のクエリを使用して値の範囲のカウントを取得しています:
$ curl -XGET 'http://localhost:9200/myindex/mytype/_count' -d '{
range:{myfield:{gt:"start_val",lt:"end_val"}}
}
'
現在、いくつかの範囲があり、各範囲のカウントが必要です。毎回再クエリするのではなく、1 回のクエリでそれらを取得できますか?
search_type=countを使用してマルチ検索を調べましたが、おそらく従うべき正しいアプローチではありません...(グループ化ではなく、集計されたカウントが得られました...誤用したようです)
編集:範囲ファセットが素晴らしいことを発見しましたが、残念ながら私の値は数値でも日付でもなく、単なる文字列です...
EDIT2:これは、受け入れられた回答に基づいて、私が最終的に得たものです:
$ curl -XGET 'http://localhost:9200/myindex/mytype/_search?search_type=count' -d '{
facets : {
range1 : {
filter : {
range:{myfield:{gt:"start_val1",lt:"end_val1"}}
}
},
range2 : {
filter : {
range:{myfield:{gt:"start_val2",lt:"end_val2"}}
}
}
}
}
'