我喜歡在我的MongoDB下面的示例數據(採集:data_extraction_test):無法從BSON類型的字符串轉換成日期
{
"_id" : ObjectId("4f16fc97d1e2d32371003e27"),
"date" : "14 Nov 2000 08:22:00 -0800"
}
{
"_id" : ObjectId("4f16fc97d1e2d32371003e28"),
"date" : "14 Nov 2000 07:37:00 -0800"
}
{
"_id" : ObjectId("4f16fc97d1e2d32371003e29"),
"date" : "14 Nov 2000 07:25:00 -0800"
}
當運行JavaScript代碼(提取物在下面給出)以下錯誤出現:無法從BSON類型字符串轉換爲日期
let cursor = col.aggregate([
{
$project:{
_id: "$_id",
year: {$year: new Date("13 Nov 2000 01:41:00 -0800 (PST)")},
// month: new Date(new String("$date")),
month: { $month: "$date" },
}
},
{
$out: "dan"
}
]).toArray((err, items)=>{
assert.equal(null, err);
console.log("daniel",items);
resolve(true);
db.close();
});
如何將字符串轉換爲ISODate?
喜的是,在你的數據庫文件的實際表現?你是如何將這些日期插入到數據庫中的? –
嗨,這是本集合中文檔的實際表示。我之前執行過這個函數:db.messages.aggregate([{$ project:{date:{$ substr:[「$ headers.Date」,5,26]}}},{$ out:「date_extraction_test」} ]) –
有關如何修復數據的詳細信息,請參見[在mongodb中轉換字符串](https://stackoverflow.com/questions/10942931/converting-string-to-date-in-mongodb) –