mongodb - mgo time.Time 或 bool 检查

标签 mongodb go mgo

我有一个 mongo 文档,其中包含一个日期字段,该字段也可以为假(或未定义),而且我似乎无法找到如何检查该字段是否可用或为假或是否为日期(时间。时间)在 golang/mgo :S

最佳答案

如果您有一个time.Time 字段,并且想知道它是否正确设置了有效日期,您可以查询它的IsZero() 方法。否则,如果您尝试在数据库中查询此类文档,则可以执行以下操作之一。

查询字段是否为false:

iter := collection.Find(bson.M{"field": false}).Iter()

查询字段是否可用,带$exists operator :

iter := collection.Find(bson.M{"field": bson.M{"$exists": true}}).Iter()

查询字段是否为日期,使用 $type operator :

iter := collection.Find(bson.M{"field": bson.M{"$type": 9}}).Iter()

关于mongodb - mgo time.Time 或 bool 检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18721801/

相关文章:

python - 从 Mongo 获取 dict 并使用 Numpy 转换为 ndarray

mongodb - Redis:设置时间=获取时间。为什么?

reflection - 如何使用反射在运行时更改方法实现?

go - 组织路线和助手

mongodb - 如何通过 mgo (golang) 创建哈希索引

javascript - 如何在 mongodb 的边界框中获取任何项目(点、线串、多边形)

mongodb - Mongod - 被黑客攻击后日志文件的可用空间不足

mongodb - 使用 Golang mgo : Persistent no reachable server to replica set 连接到 MongoDB Atlas

amazon-web-services - Base64 编码数据未在 GO 中的 AWS s3 存储桶中作为 PNG 图像上传

mongodb - 如何获取mongodb mgo.v2中的所有记录?