在我的猫鼬模式“摄影师”中,我有一个带有嵌套对象的属性,该属性描述摄影师何时不可用,如下所示:
const photographer = new Schema({
_id : Schema.Types.ObjectId,
...
busy: [{startDate : Date, endDate : Date}],
...
})
我需要查询所有给定日期的文档,这些文档表示在给定时间内有空的摄影师。我不知道如何编写正确的查询。有人可以帮帮我吗?
答案 0 :(得分:0)
您可能要进行范围查询。切换$gt
和$lt
取决于您的程序。例如:
var myDate = new Date(req.query.date); //
Photographer.find({
$and: [
{'busy.startDate': {$lt: myDate}},
{'busy.endDate': {$gt: myDate}}
]
}, (err, photographers) => {})
或者,简单的方法是先让所有摄影师使用,然后再进行条件检查摄影师在指定的日子是否忙碌。