为了账号安全,请及时绑定邮箱和手机立即绑定

使用 gopkg.in/mgo.v2 检查 mongo 中的对象是否存在

使用 gopkg.in/mgo.v2 检查 mongo 中的对象是否存在

Go
慕少森 2021-11-08 18:54:34
我正在寻找方便的方法来检查对象是否已存在于集合中。目前我发现的唯一方法是type result interface{}var res resulterr := col.Find(bson.M{"title": "title1"}).One(&res)if err != nil {    if err.Error() == "not found" {        log.Println("No such document")    } else {        log.Println("err occured", err)    }}我不想创建变量 res,如果对象存在,它可能是包含很多字段的非常繁重的文档。我希望有另一种方式,一些 Check() 函数只会返回 bool 值..基本上我只需要知道已经存储在集合中的对象,我不需要它自己
查看完整描述

3 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

count, err = collection.Find(bson.M{field: value}).Count()


查看完整回答
反对 回复 2021-11-08
?
弑天下

TA贡献1818条经验 获得超8个赞

你必须使用 $exists

语法:{ field: { $exists: } }

更多细节

http://docs.mongodb.org/manual/reference/operator/query/exists/


查看完整回答
反对 回复 2021-11-08
?
MYYA

TA贡献1868条经验 获得超4个赞

官方 Mongo 驱动程序中,您可以使用CountDocuments函数获取具有特定键的文档数:

count, err := collection.CountDocuments(context.TODO(), bson.D{{"key", "value"}})


查看完整回答
反对 回复 2021-11-08
  • 3 回答
  • 0 关注
  • 247 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信