我目前的文件如下:
{
_id: 123,
nextBillingDate: '2018-02-12',
}
我需要一种方法来查询nextBillingDate
小于或等于今天的文档。
例如,如果我有以下文件:
[
{
_id: 123,
nextBillingDate: '2018-02-12'
},
{
_id: 789,
nextBillingDate: '2018-02-01'
},
{
_id: 654,
nextBillingDate: '2018-02-28'
}
]
今天是2018-02-12
,查询的结果需要包含_id
123和789的文档。
试试这个查询
db.col.find(
{$expr :
{$lte :
[
{$dateFromString : {dateString : "$nextBillingDate"}},
new Date("2018-02-12")
]
}
}
)
使用聚合
db.col.aggregate([
{$match :
{$expr :
{$lte :
[
{$dateFromString : {dateString : "$nextBillingDate"}},
new Date("2018-02-12")
]
}
}
}
])