聚合命令

前端之家收集整理的这篇文章主要介绍了聚合命令前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
----------------------------------------------------聚合命令 测试集合中的数据如下: db.mycol.insert({ title: 'MongoDB Overview',description: 'MongoDB is no sql database',by_user: 'w3cschool.cc',url: 'http://www.w3cschool.cc',tags: ['mongodb','database','Nosql'],likes: 100 }) db.mycol.insert({ title: 'Nosql Overview',description: 'No sql database is very fast',likes: 10 }) db.mycol.insert({ title: 'Neo4j Overview',description: 'Neo4j is no sql database',by_user: 'Neo4j',url: 'http://www.neo4j.com',tags: ['neo4j',likes: 750 }) 1、计算每个作者所写的文章数 db.mycol.aggregate([{$group : {_id : "$by_user",num_tutorial : {$sum : 1}}}]) 以上实例类似sql语句: select by_user,count(*) from mycol group by by_user $sum 计算总和 db.mycol.aggregate([{$group : {_id : "$by_user",num_tutorial : {$sum : "$likes"}}}]) $avg 计算平均值 db.mycol.aggregate([{$group : {_id : "$by_user",num_tutorial : {$avg : "$likes"}}}]) $min 获取集合中所有文档对应值得最小值。 db.mycol.aggregate([{$group : {_id : "$by_user",num_tutorial : {$min : "$likes"}}}]) $max 获取集合中所有文档对应值得最大值。 db.mycol.aggregate([{$group : {_id : "$by_user",num_tutorial : {$max : "$likes"}}}]) $push 在结果文档中插入值到一个数组中。 db.mycol.aggregate([{$group : {_id : "$by_user",url : {$push: "$url"}}}]) $addToSet 在结果文档中插入值到一个数组中,但不创建副本。 db.mycol.aggregate([{$group : {_id : "$by_user",url : {$addToSet : "$url"}}}]) $first 根据资源文档的排序获取第一个文档数据。 db.mycol.aggregate([{$group : {_id : "$by_user",first_url : {$first : "$url"}}}]) $last 根据资源文档的排序获取最后一个文档数据 db.mycol.aggregate([{$group : {_id : "$by_user",last_url : {$last : "$url"}}}]) 原文链接:https://www.f2er.com/javaschema/283986.html

猜你在找的设计模式相关文章