es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo buscar documentos anidados en MongoDB y encontrar una coincidencia exacta de campo.

Registros de colecciones

He utilizado el siguiente código para buscar, pero muestra todos los datos de las cuentas:

db.getCollection('leads').find({"accounts.status":"suspended"})

Después de la consulta de búsqueda, el resultado es el siguiente:

Quiero buscar donde accounts.status=suspended, pero el resultado debe mostrar los documentos anidados coincidentes en “accounts”.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para buscar documentos anidados debajo del objeto de cuentas en MongoDB, puedes usar la notación de punto en tu consulta para especificar el campo específico que estás buscando. En este caso, puedes modificar tu consulta para que se vea así:

    db.getCollection('leads').find({"accounts.status": "suspended", "accounts.match": true})
    

    Esta consulta buscará documentos en la colección de leads donde el campo de estado de cuentas sea igual a “suspendido”, y haya un campo anidado de cuentas.match que esté ajustado a verdadero. Esto limitará los resultados para incluir solamente documentos donde ambas condiciones se cumplan.

    Puedes agregar condiciones adicionales de campo anidadas usando la notación de punto de manera similar para refinar aún más tu búsqueda.

Comments are closed.