首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mongodb中使用聚合请求按日期排序

在mongodb中使用聚合请求按日期排序
EN

Stack Overflow用户
提问于 2013-07-26 18:28:07
回答 1查看 15K关注 0票数 9

我想检索来自当前最旧文档的值列表signed.But我无法在date.Thanks上选择已放弃的文档​​

下面是json:

代码语言:javascript
复制
    "ad" : "noc3",
    "createdDate" : ISODate(),
    "list" : [
            {
                    "id" : "p45",
                    "value" : 21,

            },
            {
                    "id" : "p6",
                    "value" : 20,             
            },
            {
                   "id" : "4578",     
                    "value" : 319
            }
   ]

下面是我的聚合请求:

代码语言:javascript
复制
db.friends.aggregate({$match:{advertiser:"noc3", {$sort:{timestamps:-1},{$limit:1} }},{$unwind:"$list"},{$project:{_id: "$list.id", value:{$add:[0]}}});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-26 18:48:59

您的聚合查询不正确。将排序和限制添加到匹配中,但这就是您现在要做的。您可以使用不同的管道操作符:

代码语言:javascript
复制
db.friends.aggregate( [
    { $match: { advertiser: "noc3" } }, 
    { $sort: { createdDate: -1 } },
    { $limit: 1 },

您的其他管道操作符也有点奇怪,并且您的代码与查询在timestampscreatedDate上不匹配。如果您添加了预期的输出,我可以更新答案,使其也包含查询的最后部分。

票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17879005

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档