Yo tengo este pipeline con dos projects:
[
{
'$match': {
'idproducto': {
'$nin': [
'', 0, False
]
}
}
}, {
'$project': {
'idproducto': 1,
'descripcion': 1,
'idgrupo': 1,
'createdAt': 1,
'updatedAt': 1,
'idEmpresa': 1
}
}, {
'$lookup': {
'from': 'productosDetalle',
'localField': 'idproducto',
'foreignField': 'idproducto',
'as': 'detallesProducto'
}
}, {
'$lookup': {
'from': 'grupos',
'localField': 'idgrupo',
'foreignField': 'idgrupo',
'as': 'categoria'
}
}, {
'$unwind': {
'path': '$detallesProducto'
}
}, {
'$addFields': {
'name': '$descripcion',
'companyId': '$idEmpresa',
'description': '',
'price': '$detallesProducto.precio',
'code': '',
'category': {
'$arrayElemAt': [
'$categoria.descripcion', 0
]
}
}
}, {
'$project': {
'name': 1,
'companyId': 1,
'description': 1,
'price': 1,
'code': 1,
'category': 1,
'createdAt': 1,
'updatedAt': 1
}
}
]
pero ahora que se que project puede crear y eliminar, puedo mejorar mi pipeline
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?