我有一个包含以下文件的索引:
[
{
"field1": "foo",
"field2": "bar"
},
...
]
Run Code Online (Sandbox Code Playgroud)
基本上,我需要的是一个字段添加field3到每个文档与field1和field2连接起来并用分号隔开,像这样:
[
{
"field1": "foo",
"field2": "bar",
"field3": "foo;bar"
},
...
]
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将新列添加到我的所有文档中,从而自动复制其他字段中的值?
然后使用以下查询:
POST /my_index/my_type/_update_by_query
{
"query": {
"match_all": {}
},
"script": "ctx._source.field3 = ctx._source.field1 + ';' + ctx._source.field2"
}
Run Code Online (Sandbox Code Playgroud)
确保实现scripting在elasticsearch.yml重启ES。
这不需要重新索引
希望这对您有用。
| 归档时间: |
|
| 查看次数: |
2050 次 |
| 最近记录: |