Tienes que usar $arrayToObject
si desea construir sus claves dinámicamente. Toma una matriz de k
y v
campos como parámetro. Para convertirlo en root, puede usar $replaceRoot
escenario, intente:
db.col.aggregate([
{
$replaceRoot: {
newRoot: { $arrayToObject: [ [ { k: "$code", v: "$item" } ] ]}
}
}
])