java 连接 Elasticsearch 使用 RestHighLevelClient 根据查询结果进行修改或删除

根据查询结果删除数据

public void deleteDataByQuery() throws IOException {
	MatchQueryBuilder matchQuery = QueryBuilders.matchQuery("name", "bb");

    DeleteByQueryRequest deleteRequest = new DeleteByQueryRequest("myindex");
    deleteRequest.setQuery(matchQuery);
    BulkByScrollResponse deleteResponse = restHighLevelClient.deleteByQuery(
            deleteRequest, RequestOptions.DEFAULT);
}

根据查询结果更新数据

public void updateDataByQuery() throws IOException {
    MatchQueryBuilder queryBuilder = QueryBuilders.matchQuery("name", "aa");
    UpdateByQueryRequest request = new UpdateByQueryRequest("myindex");
    request.setQuery(queryBuilder);
    BulkByScrollResponse response = restHighLevelClient.updateByQuery(request, RequestOptions.DEFAULT);
}
posted @ 2022-03-07 18:04  叕叕666  阅读(99)  评论(0)    收藏  举报