Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

87
Vistas
Encuentre todas las tareas asignadas a un miembro dentro de la matriz addedTo
[ { _id: 1, title: "Task 1", assignedTo: ["userId1", "userId2", "userId3"] status: "To do" }, { _id: 2, title: "Task 2", assignedTo: ["userId1", "userId2"], status: "In progress" }, { _id: 3, title: "Task 3", assignedTo: ["userId3"], status: "Completed" } ]

Quiero usar el agregado MongoDB para devolver todas las tareas asignadas a un usuario y agruparlas por estado. Por ejemplo, la entrada es: userId: "userId1" y el resultado esperado debería ser algo como esto:

 { results: [ { status: "To do", tasks: [ { _id: 1, title: "Task 1", assignedTo: ["userId1", "userId2", "userId3"] } ] }, { status: "In progress", tasks: [ { _id: 2, title: "Task 2", assignedTo: ["userId1", "userId2"] } ] }, { status: "Completed", tasks: [] }, ] }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

puede agrupar por status y enviar elementos si coincide con el ID de userId1

puedes probarlo aquí parque infantil mongodb

 db.collection.aggregate([ { "$group": { "_id": { status: "$status" }, tasks: { "$push": { $cond: [ { "$in": [ "userId1", "$assignedTo" ] }, { _id: "$_id", title: "$title", assignedTo: "$assignedTo" }, "$$REMOVE" ] } } } }, { "$project": { status: "$_id.status", tasks: 1, _id: 0 } } ])
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda