美文网首页
mongo聚合操作

mongo聚合操作

作者: 风亡小窝 | 来源:发表于2019-06-09 01:12 被阅读0次

每个用户的发帖量

db.getCollection("forums").aggregate([
    {$group: {
        _id: '$user_id', 
        count: {$sum:1}, 
    }},
    {$lookup:{
       localField: '_id',
       from:'users',
       foreignField:'id',
       as: 'user_info',
    }},
    {$addFields: {
        user_info: {$arrayElemAt: ['$user_info', 0]},
    }},
    {$sort:{count:-1}},
    {$project: {
        user_id:'$_id',
        nickname: '$user_info.nickname',
        count:'$count',
    }}
])

对帖子的重新展示(forum_view)

db.getCollection("forums").aggregate([
    {$lookup: {
            "localField": "user_id",
            "from": "users",
            "foreignField": "id",
            "as": "user_info"
        }
    },
    {$addFields: {
            "user_info": {
                "$arrayElemAt": [
                    "$user_info",
                    0
                ]
            },
            "forum_picture.images": {
                "$ifNull": [
                    "$images",
                    "$forum_picture.images"
                ]
            },
            "forum_picture.thumbs": {
                "$ifNull": [
                    "$thumbs",
                    "$forum_picture.thumbs"
                ]
            }
        }
    },
    {$project: {
            "_id": 0,
            "forum_id": "$id",
            "idol_id": 1,
            "user_id": 1,
            "title": 1,
            "content": 1,
            "nickname": "$user_info.nickname",
            "forum_picture": 1,
        }
    }
])

相关文章

  • mongo回顾(七:聚合查询)

    上一篇简单介绍了mongo的增删改查,今天来聊聊mongo的聚合操作 什么是 MongoDB 聚合框架 Mongo...

  • mongo聚合操作

    每个用户的发帖量 对帖子的重新展示(forum_view)

  • mongo 聚合操作

    清空集合中的文档 数据准备 准备 users 表数据 在 users 里面准备一组数据,包含 item ,qty,...

  • mongo聚合

    mongo聚合

  • mongo聚合

    aggregate聚合 插入参数 现在我们通过以上集合计算每个作者所写的文章数,使用aggregate()计算结果...

  • 「Mongo」聚合操作与清洗重复数据项

    使用Mongo聚合操作来进行重复的数据项清洗,并使用PyMongo加入到数据清洗组件中。 当前环境:PyMongo...

  • Mongo的聚合操作:aggregate、lookup、let、

    先看案例。 订单orders集合的情况 仓库warehouses集合的情况 上面这个是官方案例的情况,从订单表入手...

  • mongo聚合框架

       聚合框架可以对集合中的文档进行变换和组合。基本上,可以用多个构件创建一个管道(pipeline),用于对一连...

  • mongo聚合(Aggregation)

    前言 首先,也是先上官方文档下面一张图来看pipeline,pipeline是基于数据处理的聚合管道 特例 突然发...

  • mongo聚合查询

    1.概述 MongoDB 聚合框架(Aggregation Framework)是一个计算框架,它可以:• 作用在...

网友评论

      本文标题:mongo聚合操作

      本文链接:https://www.haomeiwen.com/subject/bftgxctx.html