MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

changement de type mongodb en tableau

La réponse de Nitin Garg ci-dessus fonctionne presque, sauf que son exemple convertit une chaîne en un hachage, PAS une chaîne en un tableau.

En tenant compte des commentaires de Joel Harris, la bonne solution ressemblerait à :

db.jobs.find( { "jobLocationCity" : { $type : 2 } } ).snapshot().forEach( function (x) {
    x.jobLocationCity = [ jobLocationCity ];
    db.jobs.save(x);
});

Ou si vous utilisez db.eval :

function f() {
    db.jobs.find( { "jobLocationCity" : { $type : 2 } } ).snapshot().forEach( function (x) {
        x.jobLocationCity = [ jobLocationCity ];
        db.jobs.save(x);
    });
}
db.eval(f);