MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So verwenden Sie den Feldwert als Schlüsselname im Mongodb-Ergebnis

Sie müssen $arrayToObject verwenden wenn Sie Ihre Schlüssel dynamisch erstellen möchten. Es nimmt ein Array von k und v Felder als Parameter. Um es zu rooten, können Sie $replaceRoot verwenden Stufe, versuchen Sie:

db.col.aggregate([
    {
        $replaceRoot: {
            newRoot: { $arrayToObject: [ [ { k: "$code", v: "$item" } ] ]}
        }
    }
])