不要再问ES怎么添加字段了
ES版本:实现思路:对mapping添加字段,但是旧数据是不会有该字段,此时使用_update_by_query对旧数据进行更新即可:添加字段:PUT index/_mapping{"properties":{"new_field":{"type":"date","format":"yyyy-MM-dd HH:mm:ss"}}}修改旧数据:POSTindex/_doc/_update_by_que
·
ES版本:
实现思路:对mapping添加字段,但是旧数据是不会有该字段,此时使用_update_by_query对旧数据进行更新即可:
添加字段:
PUT index/_mapping
{
"properties":{
"new_field":{"type":"date","format":"yyyy-MM-dd HH:mm:ss"}
}
}
修改旧数据:
POST index/_doc/_update_by_query
{
"script": {
"lang": "painless",
"inline": "if (ctx._source.new_field== null) {ctx._source.new_field= 'xxx'}"
},
"query":{
"bool":{
"must_not":{
"exists":{
"field":"new_field"
}
}
}
}
}
另一种方案:_reindex API,可以参考下面这篇:
更多推荐
已为社区贡献1条内容
所有评论(0)