如何使用Elastica删除记录?

时间:2016-11-19 04:17:20

标签: elasticsearch elastica

我想删除与Elastica

匹配日期范围的记录

查询elasticsearch以删除记录

curl -XDELETE 'http://localhost:9200/twitter/tweet/_query' -d '{
"query": {
        "range" : {
            "age" : {
                "gte" : 10,
                "lte" : 20,
                "boost" : 2.0
            }
        }
    }
} '

如何使用Elastica进行此查询?

1 个答案:

答案 0 :(得分:1)

这样的事情应该做:

$age_range = new NumericRange('age', array(
    'gte' => 10,
    'lte' => 20,
    'boost' => 2.0
));
$client->getIndex("index-name")->deleteByQuery($age_range);

请注意,如果您运行的是ES 2.x(任何版本),则需要先安装delete-by-query plugin。如果您运行ES 1.x或5.x,则无需安装任何其他插件。