Ho rimosso alcuni campi dalla definizione del documento. Voglio rimuovere questo campo su tutti i documenti di raccolta. Come posso farlo?Come rimuovere campi deprecati in Mongo?
risposta
Prova:
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
false, // Upsert
true // Multi-update
)
dove field
è il vostro campo deprecato e collection
è la collezione è stato rimosso dal.
Il comando di aggiornamento generale ha il formato db.collection.update(criteria, objNew, upsert, multi)
. Gli argomenti finali false
e true
disattivano la modalità upsert e abilitano il multi aggiornamento in modo che la query aggiorni tutti i documenti nella raccolta (non solo la prima corrispondenza).
Aggiornamento per MongoDB 2.2+
È ora in grado di fornire un oggetto JSON invece di argomenti posizionali per upsert e multi.
db.collection.update(
{ '<field>': { '$exists': true } }, // Query
{ '$unset': { '<field>': true } }, // Update
{ 'multi': true } // Options
)
Il valore specificato per il valore del campo nell'istruzione $ unset (ovvero 1 qui) non influisce sull'operazione. [$ unset operator] (http://docs.mongodb.org/manual/reference/operator/unset/#_S_unset) – Xiao
solo fare qualcosa di simile
db.people.find().forEach(function(x) {
delete x.badField;
db.people.save(x);
})
oooh la $unset
risposta qualcuno ha dato usando update()
here è abbastanza impressionante troppo.
Thx, Jamund. Anche il tuo approccio funziona. –
Non può accettare 2 risposte. Quindi lo hai appena svalutato. –
Grazie, è molto gentile! –
- 1. rimuovere _ID da Mongo risultato
- 2. mongo group query come mantenere i campi
- 3. Ordinamento su più campi mongo DB
- 4. Come rimuovere i campi Profilo da mantis
- 5. 'kCFStreamSSLAllowsExpiredCertificates' e 'kCFStreamSSLAllowsAnyRoot' sono deprecati
- 6. conteggio multiplo campi distinti per gruppo con Mongo
- 7. Concatenazione di campi di mongo db utilizzando php
- 8. Mongo: esporta tutti i dati dei campi dalla raccolta senza specificare i campi?
- 9. Encrypt Mongo data in Meteorjs
- 10. MapReduceBase e Mapper deprecati
- 11. Come posso specificare l'unicità su più campi in mongo, NON combinati?
- 12. Come proiettare solo i campi corrispondenti di array nidificato in Query shell mongo
- 13. Cocos2d - animationwithframes: Ritardo: deprecati
- 14. sslcontextbuilder e SSLContexts deprecati
- 15. C'è un modo, in Eclipse, per rimuovere gli avvisi deprecati, pre Java 1.5
- 16. Rimuovere il documento secondario da Mongo con mangusta
- 17. Metodi di GMSMapView deprecati nella versione 1.6
- 18. TYPO3: come sopprimere gli avvisi deprecati?
- 19. Come aggiornare in base ai dati esistenti in mongo
- 20. MONGO DB come operatore
- 21. Ordinamento complesso Mongo?
- 22. Frame deprecati in HTML5 ma non iFrame
- 23. trattati i metodi deprecati in androide
- 24. Gli elementi deprecati in Java verranno rimossi
- 25. Come eliminare documenti per query in modo efficiente in mongo?
- 26. gruppo in mongo esclusi i valori nulli
- 27. Mongo $ in prestazioni operatore
- 28. Come implementare i tag post in Mongo?
- 29. Come limitare la query mongo in python
- 30. Chiave esterna come relazione in Mongo DB
Sede [questa domanda altamente correlato] (http://stackoverflow.com/questions/4987289/how-to-remove-column-from-child-collection) – Cameron