Solución:
Pensé que para eso era $ elemMatch …
De los documentos: Con el operador de consulta $ elemMatch, puede hacer coincidir un documento completo dentro de una matriz.
Esto no suena a lo que estás buscando.
¿Existe una forma genérica de buscar valores particulares en la estructura de los objetos anidados?
Parece que quieres buscar “todo en el objeto ‘c’ para una instancia de ‘e1′”.
MongoDB admite dos funciones relacionadas, pero las funciones no son exactamente lo que está buscando.
-
Alcance los objetos, notación de puntos:
db.test.find({'a.b.c.d1' : 'e1'})
- Leer a través de matrices: `db.test.find ({‘abcd4’: ‘e5’})
Parece que estás buscando la capacidad de hacer ambas cosas al mismo tiempo. Desea “alcanzar objetos” y “leer matrices” en la misma consulta.
Desafortunadamente, no conozco tal característica. Es posible que desee presentar una solicitud de función para esto.
Creo que la consulta que estás buscando es
db.test.find({ 'a.b.c': { '$exists': true } });
¡Para tu crédito, estabas muy cerca!