Ano, je to možné, ale přistupujte k tomu jinak. Poskytuji k tomu svá vlastní data, ale koncept pochopíte.
Můj vzorek:
{ "array" : [ 2, 4, 3, 5, 2, 6, 8, 1, 2, 1, 3, 5, 9, 5 ] }
Budu na to "polotovat" CTO a prohlásit, že Sady jsou považovány za neuspořádané .
Existuje skutečné prohlášení JIRA, skupiny Google, které zní podobně. Vezměme to tedy od „Elliota“ a smiřme se s tím, že toto bude buďte tak.
Takže pokud chcete uspořádaný výsledek, musíte masírovat tímto způsobem pomocí fází, jako je tato
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" }}}
])
A pak udělej cokoliv. Ale teď je vaše pole seřazeno.