首页 > 解决方案 > ElasticSearch Delete By Query - 删除多个值

问题描述

使用以下 ElasticSearch 查询删除 sourceId 为 1 的所有文档:

POST http://{{elasticip}}:9200/index2/index2_doc/_delete_by_query

{
  "query": {
    "match": {
      "sourceId": 1
    }
  }
}

如果我想一次从 sourceId 1、2 和 3 中删除,正文的正确语法是什么?

标签: elasticsearch

解决方案


使用布尔术语过滤器:

{ "query" : { "bool" : { "filter" : { "terms" : { "sourceId" : [1,2,3] } } } } }

注意:jaspreet 的建议也是正确的。


推荐阅读