例如我们之前创建过一个索引 index_test,mapping如下。
PUT /index_test
{
"settings":{
"number_of_shards":2,
"number_of_replicas":3
},
"mappings":{
"_doc":{
"properties":{
"cdKeyCategoryUUID":{
"type":"keyword"
},
"skuUUID":{
"type":"keyword"
},
"expiredDay":{
"type":"integer"
},
"createTime":{
"type":"date",
"format":"yyyy-MM-dd HH:mm:ss"
}
}
}
}
}
如果现在我们需要新增一个字段叫skuNumber,则直接执行下面的命令即可修改mapping。
PUT /index_test/_doc/_mapping
{
"properties":{
"cdKeyCategoryUUID":{
"type":"keyword"
},
"skuUUID":{
"type":"keyword"
},
"expiredDay":{
"type":"integer"
},
"createTime":{
"type":"date",
"format":"yyyy-MM-dd HH:mm:ss"
},
"skuNumber":{
"type":"keyword"
}
}
}
目前新增的skuNumber字段没有默认值。我们可以设置默认值为sss。
POST index_test/_doc/_update_by_query
{
"script":{
"lang":"painless",
"source":"if (ctx._source.skuNumber == null) {ctx._source.skuNumber = 'sss'}"
}
}