Kibana Elastic_search函数,用于删除除spastic集之外的所有记录

3z6pesqy  于 2022-12-09  发布在  Kibana
关注(0)|答案(1)|浏览(165)

我想从指定的索引中删除除特定集合之外的所有记录。在elastic_search中有这样的函数吗?
我尝试使用delete_by_query函数,但无法让它按预期工作。下面是我尝试的一个片段。我基本上希望有一个id数组,而不是一次只有一个id。

POST /myindex/_delete_by_query
{
  "query": {
    "bool": {
      "must_not": [
        {
          "match": {
            "id": {
              "query": [12345,67890]
            }
          }
        }
      ]
    }
  }
}

我是elastic_search的新手,但在SQL术语中,我想使用类似以下的查询:

DELETE * FROM <my-index> WHERE <id> != <listOfIds>
igetnqfo

igetnqfo1#

良好的开端!!您可以使用terms查询按照您的建议进行操作:

POST /myindex/_delete_by_query
{
  "query": {
    "bool": {
      "must_not": [
        {
          "terms": {
            "id": [
              12345,
              67890
            ]
          }
        }
      ]
    }
  }
}

相关问题