相关疑难解决方法(0)

查找聚合性能差

我有两个系列

帖子:

{
    "_Id": "1",
    "_PostTypeId": "1",
    "_AcceptedAnswerId": "192",
    "_CreationDate": "2012-02-08T20:02:48.790",
    "_Score": "10",
    ...
    "_OwnerUserId": "6",
    ...
},
...
Run Code Online (Sandbox Code Playgroud)

和用户:

{
    "_Id": "1",
    "_Reputation": "101",
    "_CreationDate": "2012-02-08T19:45:13.447",
    "_DisplayName": "Geoff Dalgas",
    ...
    "_AccountId": "2"
},
...
Run Code Online (Sandbox Code Playgroud)

我想找到写5到15个帖子的用户.这是我的查询的样子:

db.posts.aggregate([
    {
        $lookup: {
            from: "users", 
            localField: "_OwnerUserId",
            foreignField: "_AccountId", 
            as: "X"
        }
    },  
    {
        $group: {
            _id: "$X._AccountId", 
            posts: { $sum: 1 }
        }
    },   
    {
        $match : {posts: {$gte: 5, $lte: 15}}
    },  
    {
        $sort: {posts: -1 }
    },
    {
        $project : …
Run Code Online (Sandbox Code Playgroud)

mongodb aggregation-framework

12
推荐指数
3
解决办法
1万
查看次数

标签 统计

aggregation-framework ×1

mongodb ×1