有没有办法将$ addToSet的结果作为排序数组?
我试图扩展管道和$展开数组,对它进行排序并再次分组,但结果仍然没有排序.
数组非常大,我试图避免在应用程序中对它们进行排序.
Document Example : { "_id" : ObjectId("52a84825cc8391ab188b4567"), "id" : 129624 "message" : "Sample", "date" : "12-09-2013,17:34:34", "dt" : ISODate("2013-12-09T17:34:34.000Z"), }
查询:
db.uEvents.aggregate( [ {$match : {dt : {$gte : new Date(2014,01,01) , $lt : new Date(2015,01,17)}}} ,{$sort : {dt : 1}} , {$group : { _id : { id : "$id" , year : {'$year' : "$dt"} , month : {'$month' : "$dt"} , day : {'$dayOfMonth' : "$dt"} } ,dt : {$addToSet : "$dt"} }} …