mgo time.Time或布尔检查

时间:2013-09-10 14:35:24

标签: mongodb go mgo

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

1 个答案:

答案 0 :(得分:2)

如果您有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()