所以我的这个集合包含一个字段“工作日”代表周一至周日的工作日(已选中或未选中):
var collection = [
// work week (Monday to Friday)
{
weekdays: [true, true, true, true, true, false, false]
},
// weekend
{
weekdays: [false, false, false, false, false, true, true]
},
// ...
];
现在,如何查询此集合以查找指定工作日true
的所有项目?
我的第一次尝试是使用这样的东西:
// $ elemMatch ...
'weekdays[0]': true // Monday
但它似乎没有用。我没有想法,并希望得到任何帮助!
答案 0 :(得分:2)
您可以使用此代码
db.collectin.find({'weekdays.0' : true})
如果你想检查2天:
db.collectin.find({$and :
[
{'weekdays.0' : true},
{'weekdays.1' : true}
]
})