我正在尝试从独特的聊天室获取消息。有了这个查询:
message.distinct( "chat_room",{ chat_room: {$regex : ".*" + email + ".*"}} )
我只获得了独特聊天室的列表,但我希望从给定的集合中获取所有信息(如时间,身份等)。我添加的内容更多:
.sort({ time: 1 })
我收到了错误。
答案 0 :(得分:1)
您可以使用aggragate而不是使用aggragate,因为sort和distinct不能同时使用它可能会引发错误cannot sort with distinct
所以你需要做的是
message.aggregate([{
"$match":{ chat_room: {$regex : ".*" + email + ".*"}}
},{
$group:{_id:$chat_room}
},{$sort:{
'sort_field_name':-1
}
}])