Value Count Aggregation

    单值度量标准聚合,用于计算从聚合文档中提取的值的数量。可以从文档中的特定字段提取这些值,也可以通过提供的脚本生成这些值。通常,此聚合器将与其他单值聚合一起使用。例如,当计算平均值时,可能对计算平均值的值的数量感兴趣。

    1. POST /sales/_search?size=0
    2. {
    3. "aggs" : {
    4. "types_count" : { "value_count" : { "field" : "type" } }
    5. }
    6. }

    响应:

    1. {
    2. ...
    3. "aggregations": {
    4. "types_count": {
    5. "value": 7
    6. }
    7. }
    8. }

    聚合的名称(上面的types_count)也可以作为从返回的响应中检索聚合结果的密钥。

    Script 计算脚本生成的值:

    1. POST /sales/_search?size=0
    2. {
    3. "aggs" : {
    4. "type_count" : {
    5. "value_count" : {
    6. "script" : {
    7. "source" : "doc['type'].value"
    8. }
    9. }
    10. }
    11. }
    12. }

    这将使用painless脚本语言并且没有脚本参数将脚本参数解释为内联脚本。要使用存储的脚本,请使用以下语法:

    1. POST /sales/_search?size=0
    2. {
    3. "aggs" : {
    4. "types_count" : {
    5. "value_count" : {
    6. "script" : {
    7. "id": "my_script",
    8. "params" : {
    9. "field" : "type"
    10. }
    11. }
    12. }
    13. }
    14. }
    15. }