Go调用mongodb 更新数据不存在插入,存在就更新

Posted pengshaomin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go调用mongodb 更新数据不存在插入,存在就更新相关的知识,希望对你有一定的参考价值。

需求

用户提交地址可能是新增、修改 

方案

利用mongod的upset更新匹配的地址

重点

数组的操作符号

    $[].$ //当前数组的元素

代码

    r := db.C("user").Upsert( bson.M{
    "_id": id, "address.id": address.ID,},
    bson.M{"$set": bson.M{ "address.$[].$": address,"arrayFilter":bson.M{}},})

以上是关于Go调用mongodb 更新数据不存在插入,存在就更新的主要内容,如果未能解决你的问题,请参考以下文章