猿问

mgo - 将更新和查找减少到一个查询

我发现自己必须编写两个数据库查询,我想知道是否可以减少到一个。

我正在更新一个文档,然后在数据库中再次找到该文档。是否可以在更新查询的响应中更新和接收完整的更新文档?这将节省对数据库的调用。

我应该解释一下,我保存的文档不是完整的文档,这就是为什么我必须从数据库中检索它以获取所有字段的原因。


PIPIONE
浏览 169回答 1
1回答

噜噜哒

对的,这是可能的。请查看运行findAndModify MongoDB 命令的Query.Apply方法的文档。直接从文档中,这个例子增加一个计数器并打印它的新值:change := mgo.Change{        Update: bson.M{"$inc": bson.M{"n": 1}},        ReturnNew: true,}info, err = col.Find(M{"_id": id}).Apply(change, &doc)fmt.Println(doc.N)
随时随地看视频慕课网APP

相关分类

Go
我要回答