检查可以为null的嵌套属性

eit*_*hed 5 mongodb mongodb-query

我的收藏中有以下数据:

{ colour: { r: 0, g: 0, b: 0 }},
{ colour: null },
Run Code Online (Sandbox Code Playgroud)

如何找到某些值之间colour == nullcolor.r之间的所有文档?

我试过了

.find({ where: { $or: [{colour: null}, {"colour.r": {$gt: 0, $lt: 100}}]}})
Run Code Online (Sandbox Code Playgroud)

但当然这给了我cannot read property 'r' of null空行.

sty*_*ane 5

使用$where仅如果没有其他的方式来表达你的查询

db.test.find({$or: [{"colour": null}, {"colour.r": {$gt: 0, $lt: 100}}]})
Run Code Online (Sandbox Code Playgroud)