2017-01-03 86 views
1

我的收藏有日期鍵,字符串格式, 所以如何查詢查找日期計數或我可以找到有多少數據: 我試過一個實驗,但它不工作;在MONGODB中的兩個日期之間獲取字符串日期?

db.colName.find({"date": {$gte: "Tue Aug 30 16:43:22 IST 2016",$lt: "Tue Aug 30 16:43:22 IST 2016"}}) 

請問是否可以在MongoDB中或者我怎麼能找到我的願望結果?

+2

爲了獲得最佳效果,請將日期的字符串表示形式轉換爲正確的Date類型,如本問題http:// stack overflow.com/questions/10942931/converting-string-to-date-in-mongodb – chridam

回答

0

您需要獲取所有數據,以正確格式解析所有日期,然後對其進行過濾。

如果您正在使用javascript結果保存在某個變量,並做到這一點...

result.map(function(singleResult) { 
    Date.parse(singleResult.date) 
    return singleResult 
}); 
+0

我如何改變這種格式? –

-1

你可以用ISODate

db.colName.find({"date": {$gte: ISODate("2016-08-30 16:43:22"),$lt: ISODate("2016-08-30 16:43:22")}}) 

同樣是可以做到的JavaScript日期也

db.colName.find({"date": {$gte: new Date("2016-08-30 16:43:22"),$lt: new Date("2016-08-30 16:43:22")}}) 
+0

他不能,因爲顯然他的日期被保存爲字符串。 –

+0

這是不正確的做法... –

+0

哦,我的壞,我認爲日期是以日期格式存儲。那麼就沒有辦法用查詢來做到這一點,也許你需要運行一個腳本來將字符串更改爲所有文檔的日期格式。 –

相關問題