MongoDB,MongoTemple 多重分组分页查询的处理

本文介绍了如何使用MongoDB的aggregate方法进行数据分组,包括单重分组计算总数,以及多重分组实现去重计数。在Java环境下,通过spring-data-mongodb库实现了相关操作,最后探讨了分组后如何进行分页查询,提出了目前采用的first方法来获取所需字段,但寻求更优解决方案。
摘要由CSDN通过智能技术生成

数据分组:
db.raw_data.aggregate([
{$group: {"_id": "$articleNo", "count":{$sum:1}}}
])

结果:_id是分组的字段值,count是每一个值的总数

java代码:

包:spring-data-mongodb-2.1.4.RELEASE.jar

Aggregation aggregation = Aggregation.newAggregation(
        Aggregation.match(criteria),// 条件
        Aggregation.group("articleNo").count().as("count")// 分组统计
);
AggregationResults<JSONObject> result = mongoTemplate.aggregate(aggregation, "raw_data",JSONObject.class);
List<JSONObject> list= result.getMappedResults();

结果是:[{

"_id":"526215",

"count":"3"

}]

 

多重分组

db.raw_data.aggregate([
{$grou

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值