所以我试图找到所有具有字段集且不为空的记录。
我尝试使用$exists
,但是根据MongoDB documentation,,此查询将返回等于null的字段。
$exists
匹配包含存储空值的字段的文档。
所以我现在假设我必须做这样的事情:
db.collection.find({ "fieldToCheck" : { $exists : true, $not : null } })
每当我尝试这样做时,我都会收到错误[invalid use of $not]
任何人都知道如何查询错误?
答案 0 :(得分:139)
使用$ne
(表示“不等于”)
db.collection.find({ "fieldToCheck": { $exists: true, $ne: null } })
答案 1 :(得分:2)
我发现这对我有用
db.getCollection('collectionName').findOne({"fieldName" : {$ne: null}})
答案 2 :(得分:0)
db.<COLLECTION NAME>.find({ "<FIELD NAME>": { $exists: true, $ne: null } })
答案 3 :(得分:-1)
您可以使用.Count()
count, err = collection.Find(bson.M{field: value}).Count()
但请记住设置:
db.SetSafe(&mgo.Safe{})
否则每次通话都会返回0。