我想替换所有弹性搜索索引文档中的单个用户名。有没有API查询?
我尝试搜索多个但无法找到。有人有想法吗?
我的情景:
curl -XPOST 'http://localhost:9200/test/movies/' -d '{"user":"mad", "role":"tester"}'
curl -XPOST 'http://localhost:9200/test/movies/' -d '{"user":"bob", "role":"engineer"}'
curl -XPOST 'http://localhost:9200/test/movies/' -d '{"user":"cat", "role":"engineer"}'
curl -XPOST 'http://localhost:9200/test/movies/' -d '{"user":"bob", "role":"doctor"}'

我在索引中有上述数据" test"并输入"电影"。在这里,我想要更换所有的" bob"用" alice"命名。
由于
答案 0 :(得分:3)
update-by-query是要走的路。
POST /test/movies/_update_by_query
{
"script": {
"inline": "ctx._source.user = 'alice'"
},
"query": {
"term": {
"user": "bob"
}
}
}
注意:请务必使用enable dynamic scripting才能生效。