首页 > 数据库技术 > 详细

3.mongodb的聚合框架

时间:2021-07-09 00:25:10      阅读:28      评论:0      收藏:0      [点我收藏+]

1.聚合框架基本概念

MongoDB 聚合框架(Aggregation Framework)是一个计算框架,它可以:
    作用在一个或几个集合上;
    对集合中的数据进行的一系列运算;
    将这些数据转化为期望的形式;

聚合框架是MongoDB在一个或几个集合上进行运算的框架,类似于SQL中的:
    GROUP BY
    LEFT OUTER JOIN
    AS
    等等
    
mongodb聚合中管道和步骤
    整个聚合运算过程称为管道(Pipeline),它是由多个步骤(Stage)组成的。将数据分步骤处理,逐步得到结果的方式叫做管道
    每个管道:
        接受一系列文档(原始数据);
        每个步骤对这些文档进行一系列运算;
        结果文档输出给下一个步骤;
    使用格式:
        以shell为例,使用格式为:
        pipeline = [{stage1}, {stage2}, … {stageN}];
        db.collection.aggregate(pipeline, options)
  技术分享图片
  

聚合查询的使用场景
  技术分享图片

 

  常用的步骤与sql对比

   查询user表中性别为男的firename和lastename,并且跳过100条,只要20条
   技术分享图片

   查询department部门表中女性少于10人的部门
   技术分享图片

 

 

 

 

 

 

2.常见的步骤

常见步骤        
    步骤                作用          sql等价查询
    $match              过滤          WHERE
    $project            投影          AS
    $sort               排序          ORDER BY
    $group              分组          GROUP BY
    $skip/$limit        结果限制      SKIP/LIMIT
    $lookup             左外连接      LEFT OUTER JOIN  # 尽可能避免使用,会造成mongodb性能下降
    $unwind             展开文档
    $graphLookup        图搜索
    $facet/$bucket      分面搜索    

步骤中常见的运算符
技术分享图片

 其他运算符
 技术分享图片

 

 

 

 

 

3.聚合框架的基本使用

4.视图

4.聚合优化

pass

3.mongodb的聚合框架

原文:https://www.cnblogs.com/p0st/p/14987508.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!