# Filter Aggregation（过滤器聚合）

原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-filter-aggregation.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-filter-aggregation.html)

译文链接 :[Filter Aggregation（过滤器聚合）](/pages/viewpage.action?pageId=10028748)

贡献者 : @于永超，[ApacheCN](/display/~apachecn)，[Apache中文网](/display/~apachechina)

##  Filter Aggregation（过滤器聚合）

定义当前文档集上下文中与指定过滤器匹配的所有文档的单个bucket（桶）。 通常这将用于将当前聚合上下文缩小到一组特定的文档。

例子：

```
POST /sales/_search?size=0
{
    "aggs" : {
        "t_shirts" : {
            "filter" : { "term": { "type": "t-shirt" } },
            "aggs" : {
                "avg_price" : { "avg" : { "field" : "price" } }
            }
        }
    }
}
```

在上面的例子中，我们计算了type(类型)为t-shirt的所有产品的平均价格。

响应结果：

```
{
    ...
    "aggregations" : {
        "t_shirts" : {
            "doc_count" : 3,
            "avg_price" : { "value" : 128.33333333333334 }
        }
    }
}
```