转载自:http://blog.youkuaiyun.com/caisong/article/details/49639973
mongdb非空数组查询
初始数据
db.test_tab.insert({array:[]})
db.test_tab.insert({array:[1,2,3,4,5]})
- 1
- 2
查询非空
//方式一
db.test_tab.find({array:{$elemMatch:{$ne:null}}})
//方式二
db.test_tab.find({$where:"this.array.length>0"})
- 1
- 2
- 3
- 4
结果
{ "_id" : ObjectId(""), "array" : [ 1, 2, 3, 4, 5] }
- 1
错误查询
db.test_tab.find({array:{$ne:null}})
db.test_tab.find({"array.0":{$ne:null}})
- 1
- 2
查询空数组
db.test_tab.find({array:{$size:0}})