Tengo una estructura de documento que se ve así:
{ key1:value1, key2:value2, key3: [ index0: objectID(...), index1: [ index0: objectID(...) ] ] }Sé que puede acceder a matrices usando la notación de puntos de Mongo, pero estoy tratando de crear una consulta que solo seleccione todos los registros donde la longitud de key3.index1 es mayor que cero.
Todos los documentos de esta colección tendrán key3 y key3 siempre tendrá una matriz en index1. En algunos casos, esta matriz no estará vacía.
Hasta ahora he intentado algo como esto: db.collection.find({$where: "this.key3.1.length > 0"}) pero esto no funciona.
¿Cómo puedo consultar documentos utilizando la longitud de una matriz anidada?
EDITAR: datos de muestra
{ "_id" : ObjectId("57c98fe77fe6f8009401b5d7"), "arrayOfData" : [ ObjectId("57c98fe87fe6f8009401b5d8"), [ ObjectId("57c98fe87fe6f8009401b5d9") ] ] }Lo anterior es el fragmento relevante de la estructura del documento. Todos los documentos tendrán esto, en algunos casos la matriz anidada estará vacía, en algunos casos no.