我的收集结构如下
{“pid”:1,id“:2,”auther“:”xyz“,”book“:”pqr“,”time“:1}
{“pid”:1,“id”:3,“auther”:“abc”,“book”:“stu”,“time”:2}
{“pid”:1,“id”:2,“auther”:“def”,“book”:“vwx”,“time”:3}
{“pid”:1,“id”:3,“auther”:“hij”,“book”:“yza”,“time”:4}
{“pid”:2,“id”:3,“auther”:“hij”,“book”:“yza”,“time”:4}
{“pid”:2,“id”:2,“auther”:“def”,“book”:“vwx”,“time”:3}
我希望按时间顺序按时间顺序排列记录,并将相同的ID记录组合在一起。
表示包含2的id组合在一起。
目前可能查询就像
db.coll.find({“pid”:1})。sort({“time”:-1})
是否可以在mongoDB中对字段进行分组
感谢。
答案 0 :(得分:1)
我不确定我理解你的问题(你是什么意思"小组"? - 请写下你想要的结果)。
试试这个:
.find().sort({pid:1, time: -1})
首先 - 按照pid ASC排序,而不是按时间排序DESC