MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Usuwanie poddokumentu z tablicy w MongodDB

Twój przykład działa dobrze:

db.so.drop();
db.so.insert(
{
    "_id" : ObjectId("51ee899ec15d5aaff39d3353"),
    "first" : "first",
    "last" : "last",
    "email" : "email",
    "phone" : "555 555 5555",
    "userRole" : "su",
    "cards" : [
            {
                    "rfid_id" : ObjectId("51ee899ec15d5aaff39d3359")
            }
    ],
    "zones" : [
            {
                    "zone_id" : ObjectId("51ee899ec15d5aaff39d3357")
            }
    ]
});

db.so.update({}, {$pull:{ "cards": {"rfid_id": ObjectId("51ee899ec15d5aaff39d3359")}}}, false, false)
db.so.find().pretty();

Wyjścia:

{
    "_id" : ObjectId("51ee899ec15d5aaff39d3353"),
    "cards" : [ ],
    "email" : "email",
    "first" : "first",
    "last" : "last",
    "phone" : "555 555 5555",
    "userRole" : "su",
    "zones" : [
        {
            "zone_id" : ObjectId("51ee899ec15d5aaff39d3357")
        }
    ]
}

Chociaż musiałem nieznacznie zmienić ObjectID dla ściągania, ponieważ pierwotnie używał innego ciągu między twoją prostą i pełną wersją dokumentu.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy można otrzymywać powiadomienia o zmniejszeniu postępu mapy w mongo?

  2. Mongoose pobiera dokumenty pasujące do tablicy

  3. Importuj plik CSV za pomocą schematu Mongoose

  4. Niepowodzenie:brak zamiaru gromadzenia w archiwum

  5. Nie można zainicjować zestawu replik w Ubuntu