2017-02-24 94 views
0

我的集合中有一個Timestamp字段。它存儲的格式是「2016-02-06 20:24:39 -0500」。mongodb中的日期轉換

我需要在ISODate中轉換mongodb CLI。任何人都可以告訴我如何以ISODate格式轉換日期。

+0

它是一個約會對象或只是一個字符串? –

+0

它是一個字符串。我需要它的格式爲2017-02-06T15:42:00.684Z。 – Soham

+0

你可以讓一個mongo原生javascript巫婆循環遍歷集合,讀取每一行,並將日期字符串轉換爲日期對象並相應更新 –

回答

0

我們可以在循環中用MongoDB函數做一些事情。例如,我有以下文件;

{ 
    "_id" : ObjectId("58b036ff8f79f3a0ab96a1cd"), 
    "date" : "2016-02-06 20:24:39 -0500" 
} 

我的date字符串值轉換爲ISO格式與此查詢

db.getCollection('test').find({_id:ObjectId("58b036ff8f79f3a0ab96a1cd")}).forEach(function(doc) { 
    var objDate = ISODate(doc.date); //Make an ISO date 
    doc.date = objDate; //Overwrite the value 
    db.test.save(doc); //Save the document 
}); 

現在,該文件將是這樣的;

{ 
    "_id" : ObjectId("58b036ff8f79f3a0ab96a1cd"), 
    "date" : ISODate("2016-02-06T20:24:39.000Z") 
} 

enter image description here

+0

非常感謝。它的工作完美。 – Soham

+0

很高興幫助:) –