Mongo:如果'today'在两个日期字段之间,如何设计一个布尔值?

时间:2019-07-10 13:53:39

标签: mongodb mongodb-query aggregation-framework

我有一个集合,其中文档具有此字段

"new_from" : ISODate("2019-07-08T00:00:00.000+0000"), 
"new_to" : ISODate("2019-07-21T23:59:59.000+0000"), 

我想设计一个名为new的新字段,如果今天的日期在new_from之间,则简单应该为true(或者为1,或者为“ 1”)。和new_to

是否可以在预测中计算今天的日期?

2 个答案:

答案 0 :(得分:0)

您可以在$project以下阶段使用

{ "$project": {
  "boolean": {            
    "$and": [
      { "$gte": ["$new_from", todaysDate] },
      { "$lte": ["$new_to", todaysDate] }
    ]
  }
}}

答案 1 :(得分:0)

您可以在$ project以下使用$ cond

{
            $project: {
                new:
                {
                    if: {
                        $and: [
                            { $lt: ['$new_to', new Date()] },
                            { $gt: ['$new_from', new Date()] },
                          }
                        ]
                    },
                    then:true,
                    else:false
                }
            }
        },