如何使用最近的时间在集合中查找排序/查询

时间:2014-05-30 16:04:48

标签: mongodb mongoose

我有一个名为sceanarios的集合,其中包含两个gmt时间createDateupdateDate的文档。我想根据最近的时间查询/排序文档,无论最近的时间是在createDate还是updateDate。

1 个答案:

答案 0 :(得分:0)

您可以使用聚合框架来实现,如下所示:

db.yourColl.aggregate(
                 {$project:{ 
                     greaterDate:
                                {$cond:[{$gt:["$createDate","$updateDate"]},
                                 "$createDate",
                                 "$updateDate"]
                                }
                           }
                 },
                 {$sort:{ greaterDate:-1}})

但是,您需要枚举要保留在$ project section

中的所有字段