Mongoose查询特定的日期范围,也获得空值

By simon at 2018-02-28 • 0人收藏 • 33人看过

我有一种情况,我需要获取特定日期和日期之间的日期 也可以得到不是thr的日期(意思是哪个是空的) 下面是假设工作的查询方式,请帮我弄清楚 纠正。

EvaluationTraining.find({
    mnguser: userid,
    evalDate: "", //i want the empty ones too
    evalDate: {
        '$gte': firstDay,
        '$lte': lastDay
    }
    })
    .sort({evalDate: 'desc'})
    .then(function(eval){
      //results
    })
    .catch(function(err){
      //err
    })
提前致谢

2 个回复 | 最后更新于 2018-02-28
2018-02-28   #1

尝试这个

EvaluationTraining.find({
    mnguser: userid,
    $or: [{
        evalDate: ""
    }, {
       evalDate:{ 
        '$gte': firstDay,
        '$lte': lastDay
       }
    }]
})

2018-02-28   #2

如果我们需要查找几个文档中不存在的字段,请改为 的空数据,我们可以使用$exists

EvaluationTraining.find({
    mnguser: userid,
    $or: [{
        evalDate: { $exists: false }
    }, {
       evalDate:{ 
        '$gte': firstDay,
        '$lte': lastDay
       }
    }]
})

登录后方可回帖

Loading...