我和学校的所有学生都有一个收藏。每个文档都有一个sports
数组属性,列出了每个学生的练习,但该属性可能显示为sports: []
或sports: null
,或者根本不显示。
如何检索属于上述三种情况之一的所有文件?
如何将运动添加到只有一项运动但没有表达为阵列的学生,即有sports: "Badminton"
的学生?这个属性可以成为一个数组吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
我相信您可以为此使用$ elemMatch:
db.students.find({ $not: { $elemMatch: { $exists: true } } })
这告诉mongoDB如果数组存在并且具有值,则失败。它只会返回空或空的值。
答案 2 :(得分:0)
在MongoDB上受支持的(以后)版本上:
find({field:{$not:{$size: 0}}})