MongoDB:$ $在$ group之前或在$ group之后展开?

时间:2018-01-22 15:12:29

标签: mongodb aggregate

我有一系列具有许多子项和数组的项目。在页面加载时,我想显示第一个项目,它的第一个子项目和其他只显示其名称的项目。

要对子项进行排序,我使用$ unwind。我应该在查询开始时或在我对项目进行分组后放松

性能明智,我应该更喜欢哪个? :

const searchQuery = collection.aggregate([
    {"$group":{
        "_id":0,
        "first_element":{"$first":{"projects":"$projects"}},
    }},
    {$unwind: "$first_element.projects"},
    {"$sort":{
        "first_element.projects.project.date_modified":-1
    }},
]);

或者

const searchQuery = collection.aggregate([
    {$unwind: "$first_element.projects"},
    {"$sort":{
        "first_element.projects.project.date_modified":-1
    }},
    {"$group":{
        "_id":0,
        "first_element":{"$first":{"projects":"$projects"}},
    }},
]);

0 个答案:

没有答案