Elasticsearch:查询根据字段值和return计数过滤掉特定文档

Elasticsearch: Query to filter out specific documents based on field value and return count

我正在尝试在 Elasticsearch 中编写一个查询,以过滤掉具有特定字段值的文档,以及 returns 已作为聚合过滤掉的文档数。

目前我的情况如下,但是,我的解决方案似乎是先过滤掉文档,然后在过滤之后执行计数,这使得它始终为 0。

{
   "query":{
      "bool":{
         "must_not":[
            {
               "terms":{
                  "gender":[
                     "male"
                  ]
               }
            }
         ]
      }
   },
   "aggs":{
      "removed_docs_count":{
         "filter":{
            "term":{
               "gender":"male"
            }
         }
      }
   }
}

您不需要查询块,只需 aggs 即可提供您预期的结果。

{
   "aggs":{
      "removed_docs_count":{
         "filter":{
            "term":{
               "gender":"male"
            }
         }
      }
   }
}