考慮一個集合與下列文件更新文件
{
"_id" : "aaaaaaaaaaaa",
"title" : "Hello, World!",
"date" : "Thursday, November 12, 2015",
"time" : "9:30 AM",
"endtime" : "11:30 AM"
},
{
"_id" : "bbbbbbbbbbbb",
"title" : "To B or not to B",
"date" : "Thursday, November 12, 2015",
"time" : "10:30 AM",
"endtime" : "11:00 AM"
},
{
"_id" : "cccccccccccc",
"title" : "Family Time",
"date" : "Thursday, November 12, 2015",
"time" : "10:30 AM",
"endtime" : "12:00 PM"
}
在這個簡化的輸出,我有他們的開始時間,結束時間和日期都進入了爲字符串事件。如何使用update()
中使用現有數據的字段來計算我可以實際查詢的新的正確形成的Date()類型數據。
以下工作來創建一個新的「iso_start」字段
db.events.update({},{$set: {iso_start:Date()}},{multi: true})
我想象我將能夠建立一種更新,選擇像這樣
db.events.update({},{$set: {iso_start:Date(date + " " + time)}},{multi: true})
和db.events.update({},{$set: {iso_end:Date(date + " " + time)}},{multi: true})
但我收到錯誤「日期未定義」。
更新:this.date
和this.time
使未定義的錯誤消失,但插入的日期是針對當前日期時間。我試着寫new Date()
但隨後插入日期是ISODate(「0NaN-NAN-NaNTNaN:楠:NaNZ」)
對不起,我感到困惑,忽略了你的答案,並以另一種方式解決了我的問題。我試圖確認,在我將其標記爲正確之前,它實際上是正確的答案。 –