Výše uvedená odpověď Nitina Garga téměř funguje, až na to, že jeho příklad převádí z řetězce na hash, NE z řetězce na pole.
Vezmeme-li v úvahu komentáře Joela Harrise, správné řešení by vypadalo takto:
db.jobs.find( { "jobLocationCity" : { $type : 2 } } ).snapshot().forEach( function (x) {
x.jobLocationCity = [ jobLocationCity ];
db.jobs.save(x);
});
Nebo pokud používáte db.eval:
function f() {
db.jobs.find( { "jobLocationCity" : { $type : 2 } } ).snapshot().forEach( function (x) {
x.jobLocationCity = [ jobLocationCity ];
db.jobs.save(x);
});
}
db.eval(f);