Heb je het geprobeerd
BasicDBObject orderBy = new BasicDBObject("labels.0.value", 1);
Het is niet duidelijk, maar de MongoDB-documentatie ontwijkt het. Het gebruik van het $ -teken komt overeen met het eerste item, maar het opgeven van het array-elementnummer lijkt te werken. Als iemand een beter document heeft waarin het gedrag wordt beschreven, reageer dan met de link.
Uit de documentatie
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 } } )
Documentatie is hier