sql >> Database teknologi >  >> NoSQL >> MongoDB

Opdater MongoDB-samling ved hjælp af $toLower

MongoDB har ikke konceptet $toLower som en kommando. Løsningen er at køre en stor for sløjfe over dataene og udsende opdateringerne individuelt.

Du kan gøre dette i en hvilken som helst driver eller fra skallen:

db.myCollection.find().forEach(
  function(e) {
    e.UserName = e.UserName.toLowerCase();
    db.myCollection.save(e);
  }
)

Du kan også erstatte saven med en atomopdatering:

db.myCollection.update({_id: e._id}, {$set: {UserName: e.UserName.toLowerCase() } })

Igen, du kan også gøre dette fra en hvilken som helst af driverne, koden vil være meget ens.

EDIT:Remon kommer med en god pointe. $toLower kommando eksisterer som en del af aggregeringsrammen, men dette har intet at gøre med opdatering. Dokumentationen for opdatering er her.



  1. Samme opgave udført flere gange

  2. PostgreSQL vs. MongoDB

  3. Sådan eksporteres Redis-nøgler som CSV ved hjælp af CLI

  4. Hvordan MongoDB er forskellig fra en SQL-database