mongo分组聚合(sum)在java中的用户:Aggregation agg = newAggregation();
来源:互联网 发布:长沙知豆电动车租赁 编辑:程序博客网 时间:2024/05/21 22:51
先上图:
现在已知数据库中有3条数据,订单id对应了有3个商品(sku),根据商品id经行分组得到:
sql脚本:
db.applyReturn.aggregate([{ $match: { oid: "574417900cf233e45585ce1e" } },{$group : {_id : "$itemId", qua : {$sum : "$qua"}}}])
能够正常分组了,现在要怎么样把mongo的shell脚本转换成java代码呢????????
我想啊想,找啊找,各种找
终于在http://stackoverflow.com/questions/15624473/spring-data-mongodb-aggregation-framework-integration找到了:
现在sku(颜色,尺寸)不同还得继续分组,那么最终得到的java代码就是:
group中各个字段之间用“,”分割
agg = newAggregation(match(Criteria.where("oid").is(orderId)),group("oid","itemId","color","size").sum("qua").as("qua"));AggregationResults<ApplyReturn> results = mongoTemplate.aggregate(agg, "applyReturn", ApplyReturn.class);
在CMD中执行~
db.applyReturn.aggregate([ { "$match" : { "oid" : "574417900cf233e45585ce1e"}} , { "$group" : { "_id" : { "oid" : "$oid" , "itemId" : "$itemId","color":"$color","size":"$size"} , "total" : { "$sum" : "$qua"}}}])
终于大功告成了;
之前写了一个mongo的高级用法分组聚合(count)的,一并看看呗~~
http://blog.csdn.net/xb12369/article/details/49279825
0 0
- mongo分组聚合(sum)在java中的用户:Aggregation agg = newAggregation();
- Mongo散记--安装&聚合(aggregation)& 查询(Query)
- MongoDB : Aggregation mongo聚合操作详细说明
- MongoDB中的分组聚合在java中的用法
- 从头认识java-6.1 聚合(aggregation)
- sparksql的agg函数,作用:在整体DataFrame不分组聚合
- MongoDB Aggregation 聚合管道(Aggregation Pipeline)
- java MongoDB 聚合查询aggregation
- 数据的分组和聚合 groupby agg apply
- Aggregation-聚合
- java对mongo的一些去重、分组聚合、分页查询等操作
- 使用mongo-java-driver3.0.2.jar和mongodb3.0在java代码中的用户验证4
- MongoDB 聚合管道(一)(Aggregation Pipeline)
- MongoDB 聚合管道(二)(Aggregation Pipeline)
- MongoDB 聚合管道(Aggregation Pipeline)
- MongoDB 聚合管道(一)(Aggregation Pipeline)
- MongoDB 聚合管道(二)(Aggregation Pipeline)
- MongoDB 聚合管道(Aggregation Pipeline)
- iOS开发之高级视图—— UITableView(四)自定义Cell
- oracl 11 无法将空表导出,
- iostat命令——用于输出CPU和磁盘I/O相关的统计信息
- android 处理程序全局异常和错误,UncaughtExceptionHandler
- Install Cassandra on windows
- mongo分组聚合(sum)在java中的用户:Aggregation agg = newAggregation();
- 动画库 Tweenmax 使用示例1 - 执行动画
- 读书笔记2---JavaScript number(数字)类型数据
- 关于Android的Dialog
- android二维码扫描、读取、识别、生成、带logo
- 数据结构实验-用C++实现带头结点的循环链表
- php设定错误和异常处理可使用的函数
- hdu1732 Push Box ---- BFS
- 设计模式汇总:结构型模型(下)