微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mongdb aggregate聚合操作

1、数据准备

查看前一篇group操作

 

2、aggregate函数参数讲解

MysqL     mongdb
===================
WHERE --->$match GROUP BY --->$group HAVING --->$match SELECT --->$project ORDER BY --->$sort LIMIT --->$limit SUM() --->$sum COUNT() --->$sum

 

3、操作案例

#查询每个栏目下的商品数量
db.collection.aggregate();
[
{$group:{_id:"$cat_id",total:{$sum:1}}}
]

#查询goods下有多少条商品,select count(*) from goods
[
{$group:{_id:null,total:{$sum:1}}}
]


#查询每个栏目下 价格大于50元的商品个数
[
{$match:{shop_price:{$gt:50}}},{$group:{_id:"$cat_id",total:{$sum:1}}}
]


#查询每个栏目下 价格大于50元的商品个数
#并筛选出"满足条件的商品个数" 大于等于3的栏目 
[
{$match:{shop_price:{$gt:50}}},total:{$sum:1}}},{$match:{total:{$gte:3}}}
]


#查询每个栏目下的库存量
[
{$group:{_id:"$cat_id",total:{$sum:"$goods_number"}}},]


#查询每个栏目下的库存量,并按库存量排序
[
{$group:{_id:"$cat_id",{$sort:{total:1}}
]


#查询每个栏目下的库存量,{$sort:{total:1}},{$limit:3}
]


#查询每个栏目的商品平均价格,并按平均价格由高到低排序
[
{$group:{_id:"$cat_id",avg:{$avg:"$shop_price"}}},{$sort:{avg:-1}}
]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐