Ответ 1
Try:
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
false, // Upsert
true // Multi-update
)
где field
- ваше устаревшее поле, а collection
- это сбор, из которого он был удален.
Общая команда обновления имеет вид db.collection.update( criteria, objNew, upsert, multi )
. Возвращаемые аргументы false
и true
отключают режим upsert и активируют множественное обновление, чтобы запрос обновлял все документы в коллекции (а не только первое совпадение).
Обновление для MongoDB 2.2 +
Теперь вы можете предоставить объект JSON вместо позиционных аргументов для upsert и multi.
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
{ 'multi': true } // Options
)