2011-02-07 22 views
0
的地圖功能的日期時間

我的地圖功能看起來像這樣:散發出MongoDB中

map = function() 
{ 
    day = Date.UTC(this.TimeStamp.getFullYear(), this.TimeStamp.getMonth(), this.TimeStamp.getDate()); 
    emit({day : day, store_id : this.Store_Id}, {count : 1}); 
} 

時間戳存儲爲日期在數據庫中,這樣的:

{ "TimeStamp" : "Mon Mar 01 2010 11:58:09 GMT+0000 (BST)", ...} 

我需要的「天「結果集合被存儲爲日期類型爲好,但它存儲爲長(大紀元蜱)是這樣的:

{ "_id" : { "day" : 1265414400000, "store_id" : 10}, "value" : { "count" : 7 } } 

我試過CH將發射老化到這樣的東西,但沒有幫助:

有關如何做到這一點的任何想法?

回答

1

Date.utc將從紀元返回毫秒。因此,當您將數據存回數據庫時,可以使用例如:

new Date(dateAsLong) 

它將以BSON日期格式存儲。比蒙戈1.7更早

它會在你的散列顯示爲:

"Mon Mar 01 2010 11:58:09 GMT+0000 (BST)" 

1.7+它會顯示爲:

ISODate("2010-03-01T11:58:09Z")