| 
     << Click to Display Table of Contents >> 聚合函数 | 
    
    
     ![]() ![]()  
     | 
  
函数  | 
语法  | 
说明  | 
举例  | 
|---|---|---|---|
addToSet  | 
{ $addToSet: <expression> }  | 
返回所有唯一值的数组,这些值是通过将表达式应用于一组按键共享相同组的文档中的每个文档而得出的。未指定输出数组中元素的顺序  | 
例如 : { $addToSet: "$col" };  | 
avg  | 
{ $avg: <expression> }  | 
返回数值的平均值  | 
例如 : { $avg: "$col" }  | 
first  | 
{ $first: <expression> }  | 
返回将表达式应用到按键共享同一组文档的一组文档中的第一个文档所得到的值。仅在文档按定义的顺序排列时才有意义  | 
例如 : { $first: "$col" };  | 
last  | 
{ $last: <expression> }  | 
返回将表达式应用到按字段共享同一组文档的一组文档中的最后一个文档所得到的值。仅在文档按定义的顺序排列时才有意义  | 
例如 : { $last: "$col" };  | 
max  | 
{ $max: <expression> }  | 
返回最大值。$max使用指定的BSON比较顺序对不同类型的值进行比较,同时比较值和类型  | 
例如 : { $max: [ 5, 8 ] }  | 
mergeObjects  | 
{ $mergeObjects: <document> }  | 
返回多个文档的的合集。注意:此处的object是mongo中特定的结构  | 
例如 : { $mergeObjects: "$object" }  | 
min  | 
{ $min: <expression> }  | 
返回最小值。$min使用指定的BSON比较顺序对不同类型的值进行比较,同时比较值和类型  | 
例如 : { $min: [ 5, 8 ] }  | 
push  | 
{ $push: <expression> }  | 
返回所有值的数组,这些值是通过将表达式应用于按键共享同一组文档的一组文档中的每个文档而得到的  | 
例如 : { $push: { t1: "test1", t2: "test2" } }  | 
stdDevPop  | 
{ $stdDevPop: <expression> }  | 
返回输入值的总体标准偏差  | 
例如 : { $stdDevPop: "$col" }  | 
stdDevSamp  | 
{ $stdDevSamp: <expression> }  | 
计算输入值的样本标准偏差。如果值包含总体样本的数据样本,以用于对该总体进行概括,则使用。$stdDevSamp忽略非数字值  | 
例如 : { $stdDevSamp: "$col" }  | 
sum  | 
{ $sum: <expression> }  | 
计算并返回数值之和。$sum忽略非数值  | 
例如 : { $sum: "$col" }  |