0
我試圖讓查詢工作從單個模式中獲取分組數據。模式看起來像在Mongoose中對查詢進行分組
Message: {
sender: objectId,
recipient: objectId,
message: String
posted: Date
}
每個文檔是一個純文本消息。對話將是對消息的簡單查詢。現在我想用最後一條消息得到最後的X個對話。如何應用分組?
謝謝。
我試圖讓查詢工作從單個模式中獲取分組數據。模式看起來像在Mongoose中對查詢進行分組
Message: {
sender: objectId,
recipient: objectId,
message: String
posted: Date
}
每個文檔是一個純文本消息。對話將是對消息的簡單查詢。現在我想用最後一條消息得到最後的X個對話。如何應用分組?
謝謝。
會說總量符合這裏的法案。運行下面的管道,以獲得最後的X談話,記$skip + $limit
Sequence Optimization軸承:
var pipeline = [
{
"$match": {
"$or": [
{ "sender": userId },
{ "recipient": userId }
]
}
},
{ "$sort": { "posted": -1 } },
{ "$limit": PAGE_SIZE },
{ "$skip": (_page - 1) * PAGE_SIZE }
]
Model.aggregate(pipeline, _cb);
感謝,但是這是行不通的。我假設我需要一個$ group屬性來指定要聚合的內容 – damien