cari

Rumah  >  Soal Jawab  >  teks badan

mongodb 修改字段类型, 现在集合中有一个字段是string,要修改为date类型, 怎么弄 ?

mongodb 修改字段类型, 现在集合中有一个字段是string,要修改为date类型, 怎么弄 ?

阿神阿神2764 hari yang lalu1040

membalas semua(3)saya akan balas

  • 漂亮男人

    漂亮男人2017-05-02 09:21:22

    MongoDB adalah "tanpa skema", dan tiada konsep metadata untuk medan, jadi tiada cara untuk mengubah suai jenis medan secara langsung, kerana setiap medan dokumen mempunyai jenisnya sendiri. Berdasarkan situasi ini, anda hanya boleh melintasi semua dokumen dan mengubah suai jenis medan satu demi satu. Contohnya, dokumen asal ialah:

    {_id: ObjectId(...), date: "Fri May 20 2016 17:04:27 GMT+0800 (CST)"}
    

    Kemudian anda perlu merentasi koleksi ini dan mengubah suai jenis medan satu demi satu

    db.coll.forEach(function(doc) {
        db.coll.update({_id: doc._id}, {$set: {date: new Date(doc.date)}});
    });

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-02 09:21:22

        db.demo.find({g:{$type:2}}).forEach(function(x){
            
            x.g=new Date();
            db.demo.save(x)
            
            }
    )

    $type: ialah jenisnya. 2 ialah jenis rentetan.

    balas
    0
  • 黄舟

    黄舟2017-05-02 09:21:22

    Rujuk ini https://zhuanlan.zhihu.com/p/... untuk menyelesaikan UTCDatetime

    balas
    0
  • Batalbalas