原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/search-aggregations-metrics-valuecount-aggregation.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/search-aggregations-metrics-valuecount-aggregation.html
本地英文版地址: ../en/search-aggregations-metrics-valuecount-aggregation.html
重要: 此版本不会发布额外的bug修复或文档更新。最新信息请参考 当前版本文档。
一个 single-value(单值) 度量聚合,计算从聚合文档中提取的值的数量。
这些值可以从文档的指定字段中提取,也可以由提供的脚本生成。
通常,此聚合器将与其他单值聚合一起使用。
例如,在计算 avg(平均值) 时,人们可能会对计算平均值的值的数量感兴趣。
POST /sales/_search?size=0
{
"aggs" : {
"types_count" : { "value_count" : { "field" : "type" } }
}
}
响应为:
{
...
"aggregations": {
"types_count": {
"value": 7
}
}
}
聚合的名称(上面的types_count)也用作 key,通过它可以从返回的响应中检索聚合结果。
计算脚本生成的值:
POST /sales/_search?size=0
{
"aggs" : {
"type_count" : {
"value_count" : {
"script" : {
"source" : "doc['type'].value"
}
}
}
}
}
这将把 script 参数解释为一个inline(内联) 脚本,使用 painless(无痛) 脚本语言,没有脚本参数。
要使用存储的脚本,请使用以下语法:
POST /sales/_search?size=0
{
"aggs" : {
"types_count" : {
"value_count" : {
"script" : {
"id": "my_script",
"params" : {
"field" : "type"
}
}
}
}
}
}