我有以下格式的 JSON 文档,我想删除任何以
id
开头的文档。users_
一种方法是使用通配符获取所有文档,然后删除它们的 ID,但这需要两个请求。有没有办法在单个字段上使用通配符进行删除?
我尝试过的解决方案是
{
"id": "users_1",
"name": "Adam"
}
requests.post(
'https://<some-project>.us-central1.gcp.cloud.es.io/api/as/v1/engines/<project-name>/_delete_by_query?conflicts=proceed&pretty',
headers=header,
data=json.dumps({
"query": {
"match_all": {"ids": "users_*"}
}
})
)
映射,
id
查询也应该有效:prefix
.../_delete_by_query
{
"query": {
"prefix": {
"id": {
"value": "users_"
}
}
}
}
回应:
{
"query": {
"prefix": {
"reference": {
"value": "Auto-Colors-"
}
}
}
}
这意味着你的例子不起作用。也许你有一些更新?