2017-02-20 207 views
0

有沒有什麼辦法可以將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查詢。

回答

0

以下查詢將適用於您的情況。

db.getCollection('collection_name').aggregate(
    [ 
    { 
     $project: 
     { 
      pageName: "$pageName", 
      createdAt: "$createdAt", 
      year: { $year: "$createdAt" }, 
      month: { $month: "$createdAt" } 
     } 
    }, 
    { $match : { "month" : 2, "year": 2017 } } 
    ] 
) 
相關問題