mongodb set null update

Habe ich zum vertauschen der Werte von einem Dokument.

var query = {"_id" : ObjectId("53e1c254382f891cc600076d")};

db.properties.find(query).forEach(function(prop){
   printjson({"_id":prop._id, "val":prop.val, "ua":prop.ua});
   db.properties.update(query, {$set:{ua: prop.val}},{$unset:{val:""}});
});

Vor dem update-Vorgang, Dokument sieht wie folgt aus:

{
    "_id" : ObjectId("53e1c254382f891cc600076d"),
    "val" : 9876541,
    "ua" : null
}

Und nach dem update wird es zu:

{
    "_id" : ObjectId("53e1c254382f891cc600076d"),
    "val" : 9876541,
    "ua" : 9876541
}

Aber ich erwarte es so:

{
    "_id" : ObjectId("53e1c254382f891cc600076d"),
    "val" : null,
    "ua" : 9876541
}

Aber es funktioniert nicht. auch die Einstellung "val" null ({$set:{val:null}}) direkt gelöscht meine gesamte Dokument.

InformationsquelleAutor trex | 2015-05-08
Schreibe einen Kommentar