MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB, Java, classifique pela primeira entrada da matriz


Você tentou
BasicDBObject orderBy = new BasicDBObject("labels.0.value", 1);

Não é óbvio, mas a documentação do MongoDB foge disso. Usar o sinal $ corresponde ao primeiro item, mas especificar o número do elemento da matriz parece funcionar. Se alguém tiver um documento melhor descrevendo o comportamento, responda com o link.

Da documentação
The positional $ operator facilitates updates to arrays that contain embedded
documents. Use the positional $ operator to access the fields in the embedded
documents with the dot notation on the $ operator.

db.collection.update( { <query selector> }, { <update operator>: { "array.$.field" : value } } )


A documentação está aqui