与mongodb中的月份或年份进行比较的日期
问题描述:
有没有什么办法可以将MongoDb中的日期与一个月或一年进行比较。例如: - 在收集与mongodb中的月份或年份进行比较的日期
文件: -
{
"pageName": "xyz",
"createdAt": "ISODate("2017-02-19T18:30:00Z")"
},
{
"pageName": "abc",
"createdAt": "ISODate("2017-03-19T18:30:00Z")"
},
{
"pageName": "pqr",
"createdAt": "ISODate("2018-02-19T18:30:00Z")"
},
{
"pageName": "dfg",
"createdAt": "ISODate("2017-03-19T18:30:00Z")"
}
什么,我希望是: - 如果我只用了一个月通说,02年说2017年那么它将返回: -
{
"pageName": "xyz",
"createdAt": "ISODate("2017-02-19T18:30:00Z")"
}
帮我写这个场景的MongoDb查询。
答
以下查询将适用于您的情况。
db.getCollection('collection_name').aggregate(
[
{
$project:
{
pageName: "$pageName",
createdAt: "$createdAt",
year: { $year: "$createdAt" },
month: { $month: "$createdAt" }
}
},
{ $match : { "month" : 2, "year": 2017 } }
]
)