私は、ISO Dateというタイムスタンプを含むドキュメントを持つmongoDBコレクションを持っています。既存のISODateフィールドに年を追加するMongoDB
どういうわけか、これらの日付は挿入中に台無しになってしまい、現在は1970年です! 私は挿入コードを修正しました。今すぐ正しいタイムスタンプを挿入しています。
しかし、今は1970年代の古いデータを修正する必要があります。各レコードのタイムスタンプに特定の期間を追加する必要があります。 6月2016にそれを変えるために46年および5か月のように。
例えば
現在のタイムスタンプ:
"timestamp": "1970-01-01T00:00:00.000Z"
新しいタイムスタンプ:
` "タイムスタンプ": "2016-06-01T00:00:00.000Z"
、その後、次のタイムスタンプを10秒増やす
"timestamp": "2016-06-01T00:00:20.000Z"
"timestamp": "2016-06-01T00:00:30.000Z"
のように... ISはモンゴシェルから可能ですか?もしそうでなければ、他に何が使えますか?あなたは古い日付を気にしていない場合、あなたは
db.so.update({}, {$set: {date: new Date()}})
それとも、より良い$を使用を使用することができ、文書の古い日付を必要とするので、私は
col.find().forEach(){ col.update() }
を使用
明確な例がなくても難しいです。あなたの質問を編集して、新しい文書を挿入するための既存のコードを含めることができますか?それとも、問題を呈しているコレクションのサンプル文書ですか? – chridam
@chridam、申し訳ありません、私は不明でした。私は自分の挿入を修正しました。私が必要としているのは、1970年のISODatesを更新し、46年を追加する方法です。前のものから10秒ずつ増分する必要があります。 –
私はオリジナルの問題に興味があります、それは何ですか?挿入を修正したときに日付を修正するべきではありませんか? – kazenorin