Ja dat kan, maar pak het anders aan. Ik geef hiervoor alleen mijn eigen gegevens, maar u begrijpt het concept.
Mijn voorbeeld:
{ "array" : [ 2, 4, 3, 5, 2, 6, 8, 1, 2, 1, 3, 5, 9, 5 ] }
Ik ga de CTO hierover "half citeren" en stellen dat Sets worden beschouwd als ongeordend .
Er is een echte JIRA, Google Groups-verklaring die ongeveer zo gaat. Dus laten we het van "Elliot" nemen en accepteren dat dit zal het geval zijn.
Dus als je een geordend resultaat wilt, moet je op die manier masseren met stadia zoals deze
db.collection.aggregate([
// Initial unwind
{"$unwind": "$array"},
// Do your $addToSet part
{"$group": {"_id": null, "array": {"$addToSet": "$array" }}},
// Unwind it again
{"$unwind": "$array"},
// Sort how you want to
{"$sort": { "array": 1} },
// Use $push for a regular array
{"$group": { "_id": null, "array": {"$push": "$array" }}}
])
En doe dan maar wat. Maar nu is je array gesorteerd.