Я удалил некоторые поля из определения документа. Я хочу удалить это поле по всем документам коллекции. Как мне это сделать?Как удалить устаревшие поля в Mongo?
ответ
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 и мульти.
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
{ 'multi': true } // Options
)
Значение, указанное для значения поля в операторе $ unset (т.е. 1 здесь), не влияет на операцию. [$ unset operator] (http://docs.mongodb.org/manual/reference/operator/unset/#_S_unset) – Xiao
просто сделать что-то вроде этого
db.people.find().forEach(function(x) {
delete x.badField;
db.people.save(x);
})
ооо $unset
ответ кто-то дал, используя update()
here довольно удивительным тоже.
Thx, Jamund. Ваш подход тоже работает. –
Не может принять 2 ответа. Так что просто поддержал это. –
Спасибо, это очень мило! –
- 1. Как отметить устаревшие поля в Django 1.4?
- 2. Устаревшие методы в C# Mongo Driver
- 3. Как удалить устаревшие версии Plunker?
- 4. Удалить устаревшие теги SVN
- 5. Область: удалить устаревшие объекты
- 6. Как удалить устаревшие объекты в Android-Studio?
- 7. Как удалить устаревшие публикации в Мониторе репликации?
- 8. GetPortNames() возвращает устаревшие данные/Удалить устаревшие записи компоновки в Windows?
- 9. Как удалить определенные поля mongo из результата (NodeJS, Mongoose)
- 10. добавление украшений в устаревшие текстовые поля
- 11. Как удалить устаревшие/потерянные предметы из TaxonomyHiddenList
- 12. Как удалить все устаревшие ветки из Github?
- 13. Как удалить устаревшие java-файлы классов?
- 14. Обновление поля объекта Mongo
- 15. Как удалить список в Spring данных Mongo DB Mongo repository
- 16. mongo вычесть два поля
- 17. Как проверить значение поля в базе mongo
- 18. Как переименовать поля в выводах запроса Mongo?
- 19. Mongo удалить последние документы
- 20. Удалить коллекцию STRANGE в Mongo
- 21. Django 1.10 устаревшие устаревшие
- 22. Как сохранить значение поля Mongo как Long?
- 23. Удалить недоступный Mongo shard
- 24. Удалить устаревшие значки объектов на 64x48
- 25. Как определить устаревшие разрешения?
- 26. Как удалить устаревшие элементы развертывания в модульных тестах?
- 27. Как удалить устаревшие столбцы базы данных в SilverStripe
- 28. Mongo DB создание структуры поля
- 29. Как изменить тип поля в коллекции mongo db
- 30. Как вернуть mongo только массив внутри поля?
См [это весьма родственный вопрос] (http://stackoverflow.com/questions/4987289/how-to-remove-column-from-child-collection) – Cameron