Go + Mongo 实现有数据不操作,没数据添加

发布时间 2023-08-03 14:48:14作者: 张永峰z
data := interface{}  // 要添加的内容 可以是结构体,也可以是bson
filter := bson.M{}   // 过滤内容,是否插入信息以这个为准,如果有这个内容,则不进行任何操作
// 附加参数
upsert :
= true upsertOptions := options.UpdateOptions{ UpdateOptions: &options.UpdateOptions{Upsert: &upsert}, }
// 把更新文档格式化 updateDoc :
= bson.M{ "$setOnInsert": data, } if err := db.collection("test").UpdateOne(context.Background(), filter, updateDoc, upsertOptions); err != nil { fmt.Println("UpsertSetOnInsert err", err) return err }