Usunąłem niektóre pola z definicji dokumentu. Chcę usunąć to pole ze wszystkich dokumentów kolekcji. Jak mogę to zrobić?Jak usunąć przestarzałe pola w Mongo?
Odpowiedz
Spróbuj:
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
false, // Upsert
true // Multi-update
)
gdzie field
to Nieaktualne pola i collection
to zbiór został usunięty z.
Ogólne polecenie aktualizacji ma postać db.collection.update(criteria, objNew, upsert, multi)
. Argumenty kończące argumenty false
i true
powodują wyłączenie trybu upsert i włączenie aktualizacji wielokrotnej, dzięki czemu zapytanie aktualizuje wszystkie dokumenty w kolekcji (nie tylko pierwsze dopasowanie).
Aktualizacja dla MongoDB 2.2 lub nowszym
Teraz można dostarczyć obiekt JSON zamiast pozycyjnych argumentów upsert i multi.
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
{ 'multi': true } // Options
)
Wartość określona dla wartości pola w instrukcji $ unset (tj. 1 tutaj) nie ma wpływu na operację. [$ unset operator] (http://docs.mongodb.org/manual/reference/operator/unset/#_S_unset) – Xiao
prostu zrobić coś takiego
db.people.find().forEach(function(x) {
delete x.badField;
db.people.save(x);
})
oooh ktoś $unset
odpowiedź dał za pomocą update()
here jest dość niesamowite zbyt.
THX Jamund. Twoje podejście też działa. –
Nie można zaakceptować 2 odpowiedzi. Więc tylko go przegłosowali. –
Dzięki, to bardzo miłe! –
- 1. Mongo usunąć ostatnie dokumenty
- 2. Zapytanie grupy mongo, jak zachować pola
- 3. mongo _id duplikat pola field key
- 4. Jak usunąć fokus z pola tekstowego?
- 5. Usunąć kontur z pola wyboru w FF
- 6. Przestarzałe: Function eregi() jest przestarzałe w
- 7. Jak usunąć obramowanie z pola tekstowego w WPF?
- 8. Jak usunąć gwiazdkę z wymaganego pola w Materiał kątowy
- 9. Jak usunąć dicts z listy zawierającej zduplikowane pola w pythonie?
- 10. Jak mogę usunąć przedmiot z powtarzanego pola protobuf w pythonie?
- 11. Mongo DB Usuń pole i wartość
- 12. NSYearCalendarUnit przestarzałe w iOS
- 13. Przestarzałe symbole w Clojure
- 14. TWTweetComposeViewController przestarzałe w IOS6
- 15. Indeks subdokumentów w mongo
- 16. Jak mogę usunąć duplikaty w MongoDb?
- 17. Co zastępuje przestarzałe AllocMemSize
- 18. setBackgroundDrawable() przestarzałe
- 19. Błąd w uruchamianiu mongo
- 20. setFont przestarzałe?
- 21. Jak usunąć tworzenie i edytowanie ... z pola many2one.?
- 22. Jak zastąpić przestarzałe ostrzeżenie w Xcode?
- 23. Jak usunąć ciąg pola czasowego ze zmiennej daty i znaku?
- 24. Moq jak zastąpić przestarzałe wyrażenie
- 25. W migracji railsów, w jaki sposób można usunąć limit pola
- 26. mysql: Jak usunąć znak na początku lub końcu pola
- 27. TYPO3: jak tłumić przestarzałe ostrzeżenia?
- 28. Przestarzałe znaczenie?
- 29. Enum.ToString() przestarzałe?
- 30. usunąć ikonę folderu w jstree podczas korzystania z pola wyboru
patrz [to ściśle powiązany pytanie] (http://stackoverflow.com/questions/4987289/how-to-remove-column-from-child-collection) – Cameron