MongoDB: Оператор $rename — переименование полей

Оператор $rename переименовывает поля в документах MongoDB. Синтаксис: { $rename: { <имя_старого_поля>: "<новое_имя_поля>" } }. Новое имя поля должно быть строкой.

Пример использования

Переименуем поле cartID в orderID и anotherField в anotherName.

db.collection.updateMany(
  { cartID: { $exists: true } },
  {
    $rename: {
      cartID: "orderID",
      anotherField: "anotherName"
    }
  }
)

Запрос находит документы с полем cartID ({ cartID: { $exists: true } }). Оператор $rename переименовывает cartID в orderID и anotherField в anotherName. updateMany обновляет несколько документов. Если поле отсутствует, переименование не выполняется.

Возврат к исходному имени

Чтобы вернуть исходное имя, повторите операцию $rename, поменяв местами старое и новое имена:

db.collection.updateMany(
  { "orderID": { $exists: true } },
  { $rename: { "orderID": "cartID" } }
)

Порядок полей

После переименования, новое поле добавляется в конец документа. MongoDB сначала удаляет старое поле, затем добавляет новое.

Оператор $rename — простой и эффективный инструмент для переименования полей в документах MongoDB, упрощающий работу с данными и поддерживающий согласованность структуры.

Что будем искать? Например,программа