MongoDB n'a pas de concept de $toLower
comme une commande. La solution est d'exécuter un gros for
boucle sur les données et publie les mises à jour individuellement.
Vous pouvez le faire dans n'importe quel pilote ou depuis le shell :
db.myCollection.find().forEach(
function(e) {
e.UserName = e.UserName.toLowerCase();
db.myCollection.save(e);
}
)
Vous pouvez également remplacer la sauvegarde par une mise à jour atomique :
db.myCollection.update({_id: e._id}, {$set: {UserName: e.UserName.toLowerCase() } })
Encore une fois, vous pouvez également le faire à partir de n'importe quel pilote, le code sera très similaire.
EDIT :Remon soulève un bon point. Le $toLower
La commande existe dans le cadre de l'infrastructure d'agrégation, mais cela n'a rien à voir avec la mise à jour. La documentation pour la mise à jour est ici.