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

168
Vistas
Actualizar documento anidado con múltiples condiciones
{ id: 1, name: "venkat", description: "Description", address: "chennai", pinCode: "600100", authenticationCode: "123", authenticated: false, deleted: false, Location: [ { name: "foo", description: "LocationDecription", parent: "parent", UserAccess: [ { loginName: "paklon", role: "role" } ] } ] }

Necesito actualizar el role:"admin" donde las condiciones coinciden como id: 1 , el nombre de la matriz de la Location name: "foo" y la matriz anidada de la Location de "UserAccess.loginName": "paklon" y luego actualizar la función.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

De acuerdo con la descripción mencionada anteriormente, como solución, intente ejecutar la siguiente operación de actualización en el shell de MongoDB

 db.collection.update({ "id": 1, "Location": { $elemMatch: { "name": "foo", "UserAccess": { $elemMatch: { "loginName": "paklon" } } } } }, { $set: { "Location.$.UserAccess.0.role": "admin" } })
over 4 years ago · Santiago Trujillo Denunciar

0

La siguiente consulta debería funcionar:

 db.collection.update( {"id": 1, "Location.name": "foo", "Location.UserAccess.loginName": "paklon"}, {$set: {"Location.0.UserAccess.0.role": "admin"}} )

Para actualizar un elemento en particular en una matriz, debe usar el operador posicional "$" que en realidad es un marcador de posición para el primer elemento. Por lo tanto, podría reemplazarse con "0" y como permitía usar el "$" solo una vez en la consulta, deberá usar "0" al final de la consulta en cualquier caso.

También eche un vistazo a la documentación de mongodb correspondiente

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