5

NodeJs(ネイティブドライバー)を使用してMongoDBに一括挿入していました。データに日付フィールドがあります。Dateではなく、日付フィールドを保存する方法はありますStringか?

日付のdd/mm/yyyy形式があります。現在のシナリオでは、日付をフォーマットに変換するバルクデータを反復処理して結果を取得し、mm/dd/yyyy新しい日付を作成して保存します。

データの量が増えると反復に時間がかかりすぎるため。それを行う他の方法はありますか?

4

1 に答える 1

2

インポート中に文字列 'dd/mm/yyyy' を $date 型に変換するように mongodb (mongoimport) に指示する方法はありません。

できることは、一括挿入後にタイプを変更することです。このコードは、mongodb シェル (mongo) で実行できます。

    db.your-collection-name.find().forEach(function(element){

       var parts = element.date.split("/");

       //reduce month by 1 because in javascript january is 0
       element.date = new Date(parts[2], parts[1]-1, parts[0]);

       db.your-collection-name.save(element);

    });
于 2013-09-30T03:39:58.653 に答える