ES的update
方法一
POST yc_dzbb/yc_dzbb/1797C8CF729AA000/_update
{
"doc": {
"A":"a"
},
"doc_as_upsert":true
}
“doc_as_upsert”:true时:
插入更新,文档存在则利用doc更新指定A值。文档不存在则直接插入doc文档内容{“A”:“a”}
“doc_as_upsert”:false只是更新指定A值。
方法二
POST yc_dzbb/yc_dzbb/1797C8CF729AA0004/_update
{
"scripted_upsert": false,
"upsert": {
"settlementDatasourceVOList":[
{
"cpsPaymentAmount":"0"
}
]
},
"script": { "source":"ctx._source.settlementDatasourceVOList[0].cpsPaymentAmount=ctx._source.settlementDatasourceVOList[0].cpsPaymentAmount+1"
}
}
插入更新:
当scripted_upsert:false时 当文档不存在时 插入upsert中的文档,当文档存在时则执行一次脚本更新指定数据
当scripted_upsert:true时当文档不存在时 插入upsert中的文档随后执行一次脚本更新指定数据。当文档存在时则执行一次更新指定数据。