您的位置:首页 > 数据库 > Mongodb

MongoDB管道聚合各阶段

2015-06-12 15:55 405 查看

管道聚合各阶段

  

名称

描述

$project

改造流中的文档,像通过增加新的字段或移除存在的字段。对于每一个输入文档,输出一个文档。

$match

过滤文档流,只允许匹配的文档不经过修改进入到下一个管道阶段。$match使用标准的MongoDB查询。对于每个输入文档,输出要么一个文档(匹配一个)要么零个文档(无匹配)。

$redact

通过限制文档的内容(基于存储于文档它们自己的信息),改造流中每个文档。结合$project和$match的功能。可用于实施字段级别的校订。对于每个输入文档,输出要么一个要么另个文档。

$limit

当n指定值时,传递前n个文档不经修改给管道。对于每个输入文档,输出要么一个文档(对于前n个文档)要么零个文档(在前n个文档之后)。

$skip

当n指定为跳过数量时,跳过前n个文档,并传递剩下的文档不经过修改给管道。对于每一个输入文档,输出要么零个文档(对于前n个文档)要么一个文档(如果在前n个文档之后)。

$unwind

对于每一个元素,从输入文档解构数组字段输出一个文档。每个输出文档使用元素值替换数组。对于每个输入文档,当n为数组元素个数,输出n个文档,对于空数组可以为零。

$group

通过指定标识符表达式分组输入的文档,并应用累加器表达式,如果指定,到每个分组。遍历所有的输入文档,对于每个不同的分组输出一个文档。输出文档只包含标识符列和计算列(如果指定)。

$sort

通过指定的排序键重排文档流。只有顺序改变了;文档保持不变。对于每个输入文档,输出一个文档。

$geoUear

返回一个排序的基于临近一个地理空间点的文档流。对于地理空间数据,结合$match、$sort和$limit功能。输出文档包含额外的距离字段,并可以包含一个位置标识符字段。

$out

写聚合管道的结果文档到一个集合。在使用$out阶段,它必需是管道中的最后一个阶段。



额外资源


阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: