2016-04-15 7 views
0

Ich möchte einen Patienten aus dem Array löschen, ist das möglich in meine Situation, ich habe nach Beispielen gesucht und ich konnte ähnliche Szenarien nicht finden.Kann jemand zeigen mir, wie man einen Patienten löscht, wenn das möglich ist.Ich möchte einen bestimmten Patienten aus meinem Array löschen

{ 
    "_id" : ObjectId("57113238bde91693e9ff69e7"), 
    "docname" : "Arthur Hovsepyan", 
    "job_desc" : "Hepatologist", 
    "sex" : "male", 
    "jobtype" : "fulltime", 
    "office" : "room 448", 
    "email" : "[email protected]", 
    "phone_number" : 862124343, 
    "address" : "68 Peterburg street,waterford", 
    "hours" : 12, 
    "patients" : [ 
     { 
      "name" : "Jenny Power", 
      "ward_no" : 1, 
      "sex" : "female", 
      "termdays" : 2, 
      "illness_type" : "minor", 
      "age" : 22, 
      "phone_number" : 877285221, 
      "address" : "63 Johnston street ,Waterford" 
     }, 
     { 
      "name" : "Marie Peters", 
      "ward_no" : 2, 
      "sex" : "female", 
      "termdays" : 0, 
      "illness_type" : "minor", 
      "age" : 21, 
      "phone_number" : 862145992, 
      "address" : "99 Grange,Waterford" 
     }, 
     { 
      "name" : "Philip John", 
      "ward_no" : 2, 
      "sex" : "male", 
      "termdays" : 10, 
      "illness_type" : "serious", 
      "age" : 31, 
      "phone_number" : 861125981, 
      "address" : "12 Monvoy Bridge,Waterford" 
     }, 
     { 
      "name" : "Marta Peters", 
      "ward_no" : 3, 
      "sex" : "female", 
      "termd7ays" : 0, 
      "illness_type" : "minor", 
      "age" : 31, 
      "phone_number" : 862125981, 
      "address" : "100 Grange Manor,Waterford" 
     } 
    ] 
} 
+0

Was für Ihre Abfrage das erwartete Ergebnis? – styvane

+0

Das Ergebnis wäre, dass zum Beispiel Marie Peters und alle ihre Details aus dem Array gelöscht werden würden – ebatinstitute

+0

Sie setzen echte Daten hoch oder testen Daten? – BanksySan

Antwort

1

Die Dokumente sind here.

Sie wollen

db.foo.update({}, { 
    $pull: { 
     patients: { 
      name: "Jenny Power" 
     } 
    } 
}) 
+1

Sie sollten ['updateOne'] (https://docs.mongodb.org/manual/reference/method/db.collection.updateOne/#db.collection.updateOne) oder [' updateMany () '] (https://docs.mongodb.org/manual/reference/method/db.collection.updateMany/#db.collection.updateMany), da' update() 'veraltet ist. – styvane

+1

Verfallserklärungen sind in der Shell etwas zurückgeblieben, aber sie machen die allgemeine Aussage von @ user3100115 nicht wahr. Niemand wird danach eine "Anwendung" in der "Shell" schreiben. Es ist also wahrscheinlich eine '.updateOne()' mit der '_id' des Zieldokuments. Siehst du auch das '@' Ding? Nur so wissen die Leute, dass Sie mit "ihnen" sprechen. Ansonsten sind deine Kommentare nur "mit sich selbst reden". –

Verwandte Themen