sql >> Databáze >  >> NoSQL >> MongoDB

Mongodb - odstranit nulová pole rekurzivně?

zkuste toto

const remove = (data) => {
    for (let key in data) {
        const val = data[key];
        if (val == null) {
            delete data[key];
        } else if (Array.isArray(val)) {
            val.forEach((v) => {
                remove(v);
            });
        }
    }
    return data;
}


db.getCollection('Collection').find({}).forEach((data) => {
    data = remove(data);
    db.getCollection('OtherCollection').insert(data);
    //db.getCollection('Collection').save(data); // update same record
    print(data);
})


  1. Mongodb přidání nového pole do existujícího dokumentu s konkrétní pozicí

  2. MongoDB vs. DynamoDB:Co potřebujete vědět

  3. Mongo nemá funkci max(), jak to obejít?

  4. MongoDb:Výhoda použití ObjectID oproti řetězci obsahujícímu Id?