MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment utiliser la valeur du champ comme nom de clé dans le résultat Mongodb

Vous devez utiliser $arrayToObject si vous souhaitez créer vos clés de manière dynamique. Il faut un tableau de k et v champs en tant que paramètre. Pour le rendre root, vous pouvez utiliser $replaceRoot étape, essayez :

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