2016-09-18 130 views
0

嗨,大家好,我試圖寫在MongoDB中一個複雜的查詢來獲取文件,其中當前服務器日期和createdAt日之間的日期時間差小於60分鐘。MongoDB中找到查詢,如果當前日期和createdAt日期之間的時間差小於60分鐘

Mongoldb -v 3.0.10 的currentdate =新日期(); db.blog.find({ 'blogStatus': 'OPEN'})

要申請這樣的事:

如果currentDate.getMinutes()>60分鐘真秀假文件不顯示文件

+0

這是重複的。只需在查詢中使用$ gte或$ lte(更粗/小於)參數表。 – Mort

+0

的可能的複製[MongoDB的/貓鼬在特定的日期查詢?](http://stackoverflow.com/questions/11973304/mongodb-mongoose-querying-at-a-specific-date) – Mort

回答

1

如果你想獲得那些新超過60分鐘的時候,那麼你需要在查詢中包括像這樣的帖子:

db.blog.find({ 
    blogStatus: 'OPEN', 
    createdAt: { 
    $gt: date, 
    } 
}); 

其中date是通過從當前減去60分鐘計算的日期時間。如果你使用類似Moment,那麼你可以用它來減分:

moment().subtract(60, 'minutes'); 

確保你的格式和時區適合蒙戈。這應該工作:

var date = moment().subtract(60, 'minutes').utc().format(); 

無矩和蒙戈外殼內,這樣的日子可以用類似構造:

var date = new Date(new Date() - 60 * 60 * 1000); 
相關問題