Jam*_*old 12 mongodb aggregation-framework
我对mongodb的聚合函数感到困惑.我想要的就是在我的收藏中找到最新的文档.假设每个记录都有一个"已创建"的字段
db.collection.aggregate({
$group: {
_id:0,
'id':{$first:"$_id"},
'max':{$max:"$created"}
}
})
Run Code Online (Sandbox Code Playgroud)
产生正确的结果,但我希望结果中的整个文档?我该怎么办?
这是文档的结构:
{
"_id" : ObjectId("52310da847cf343c8c000093"),
"created" : 1389073358,
"image" : ObjectId("52cb93dd47cf348786d63af2"),
"images" : [
ObjectId("52cb93dd47cf348786d63af2"),
ObjectId("52f67c8447cf343509d63af2")
],
"organization" : ObjectId("522949d347cf3402c3000001"),
"published" : 1392601521,
"status" : "PUBLISHED",
"tags" : [ ],
"updated" : 1392601521,
"user_id" : ObjectId("52214ce847cf344902000000")
}
Run Code Online (Sandbox Code Playgroud)
Vol*_*lox 14
在文档中,我发现该$$ROOT表达式解决了这个问题.
来自DOC:http: //docs.mongodb.org/manual/reference/operator/aggregation/group/#group-documents-by-author
Ana*_*lan -3
您应该使用 db.collection.find() 而不是 db.collection.aggregate():
db.collection.find().sort({"created":-1}).limit(1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8987 次 |
| 最近记录: |