Mongo汇总问题
1. 数据
/* 5 */
{
"_id" : ObjectId("5902f7ca2b3fe442d60a0946"),
"code" : "akhbxu2h1s0l",
"pcode" : "",
"level" : 1,
"hasCover" : false,
"validateNumber" : "1234",
"validated" : false,
"firstValidateInfo" : {
"logId" : "",
"clientIp" : "",
"createAt" : ISODate("2017-04-28T08:05:30.005Z"),
"wxNumber" : "",
"cityName" : {
"_id" : "",
"name" : ""
},
"mobile" : ""
},
"productId" : "",
"corpRecords" : [
{
"corp" : {
"_id" : ObjectId("58fc10252b3fe46746a93fbe"),
"name" : "udi2"
},
"userRecords" : [
{
"_id" : "u4quh34m6bc",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.005Z"),
"action" : "Handling",
"tag" : "京东"
}
]
},
{
"corp" : {
"_id" : "a1",
"name" : "北京大光2"
},
"userRecords" : [
{
"_id" : "u4quh34h14p",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.005Z"),
"action" : "Handling",
"tag" : "淘宝"
}
]
},
{
"corp" : {
"_id" : "b1",
"name" : "北京大光会才3"
},
"userRecords" : [
{
"_id" : "u4quh34l3qj",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.005Z"),
"action" : "Handling",
"tag" : "淘宝"
}
]
}
],
"recallInfo" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.005Z"),
"corpId" : "58fc10252b3fe46746a93fbe"
} /* 6 */
{
"_id" : ObjectId("5902f7ca2b3fe442d60a0947"),
"code" : "b93ib987buaf",
"pcode" : "",
"level" : 1,
"hasCover" : false,
"validateNumber" : "1234",
"validated" : false,
"firstValidateInfo" : {
"logId" : "",
"clientIp" : "",
"createAt" : ISODate("2017-04-28T08:05:30.007Z"),
"wxNumber" : "",
"cityName" : {
"_id" : "",
"name" : ""
},
"mobile" : ""
},
"productId" : "",
"corpRecords" : [
{
"corp" : {
"_id" : ObjectId("58fc10252b3fe46746a93fbe"),
"name" : "udi2"
},
"userRecords" : [
{
"_id" : "u4quh35zoq0",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.007Z"),
"action" : "Handling",
"tag" : "当当"
}
]
},
{
"corp" : {
"_id" : "a2",
"name" : "天津本宏2"
},
"userRecords" : [
{
"_id" : "u4quh360z0p",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.007Z"),
"action" : "Handling",
"tag" : "国美"
}
]
},
{
"corp" : {
"_id" : "b3",
"name" : "天津本宏腾达3"
},
"userRecords" : [
{
"_id" : "u4quh35jtqj",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.007Z"),
"action" : "Handling",
"tag" : "京东"
}
]
}
],
"recallInfo" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.007Z"),
"corpId" : "58fc10252b3fe46746a93fbe"
} /* 7 */
{
"_id" : ObjectId("5902f7ca2b3fe442d60a0948"),
"code" : "apy9f33v6rrw",
"pcode" : "",
"level" : 1,
"hasCover" : false,
"validateNumber" : "1234",
"validated" : false,
"firstValidateInfo" : {
"logId" : "",
"clientIp" : "",
"createAt" : ISODate("2017-04-28T08:05:30.012Z"),
"wxNumber" : "",
"cityName" : {
"_id" : "",
"name" : ""
},
"mobile" : ""
},
"productId" : "",
"corpRecords" : [
{
"corp" : {
"_id" : ObjectId("58fc10252b3fe46746a93fbe"),
"name" : "udi2"
},
"userRecords" : [
{
"_id" : "u4quh391n20",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.012Z"),
"action" : "Handling",
"tag" : "国美"
}
]
},
{
"corp" : {
"_id" : "a2",
"name" : "天津本宏2"
},
"userRecords" : [
{
"_id" : "u4quh38izrd",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.012Z"),
"action" : "Handling",
"tag" : "京东"
}
]
},
{
"corp" : {
"_id" : "b4",
"name" : "天津本宏远通3"
},
"userRecords" : [
{
"_id" : "u4quh3917mj",
"createBy" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.012Z"),
"action" : "Handling",
"tag" : "国美"
}
]
}
],
"recallInfo" : {
"_id" : "",
"name" : ""
},
"createAt" : ISODate("2017-04-28T08:05:30.012Z"),
"corpId" : "58fc10252b3fe46746a93fbe"
}
corpRecords表示企业记录信息。每条数据中 corpRecords 数组固定索引的 corp._id 是固定的(也就是说, 企业登记顺序是固定的。) ,corpId == corpRecords.0.corp._id , 这两项保持一致。
2. 需求
查询 第每一级的条数。
如下:
一级企业, 二级企业, 三级企业, 三级企业总数
udi2 天津本宏2 天津本宏腾达3 60
udi2 天津本宏2 天津本宏远通3 80
udi2 北京大光2 北京大光会才3 14
udi2 北京大光2 北京大光大略3 28
3.解决
db.qRCodeInfo.aggregate(
[ { $match: { "productId": "" ,corpId:"58fc10252b3fe46746a93fbe" } }
, {
$group : { _id: { c1: {$slice: [ "$corpRecords.corp._id", 3 ]} } ,
sum:{$sum : 1 } }
}
]
)
Mongo汇总问题的更多相关文章
- MongoDB分组汇总操作,及Spring data mongo的实现
转载请在页首注明作者与出处 一:分组汇总 1.1:SQL样例 分组汇总的应用场景非常多,比如查询每个班级的总分是多少,如果用关系形数据库,那么sql是这样子的 ),class from score g ...
- [MongoDB]Mongo基本使用:
汇总: 1. [MongoDB]安装MongoDB2. [MongoDB]Mongo基本使用:3. [MongoDB]MongoDB的优缺点及与关系型数据库的比较4. [MongoDB]MongoDB ...
- MongoDB资料汇总
MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. 它的特点是高性能.易部署.易使用,存储数据非常方便.主要功能特性有: 面向集合存 ...
- MongoDB资料汇总专题[转发]
转发下..这个哥收集的很全 MongoDB资料汇总专题 作者:nosqlfan http://blog.nosqlfan.com/html/3548.html 最后更新时间:2013-04-22 1. ...
- Python资料汇总(建议收藏)
整理汇总,内容包括长期必备.入门教程.练手项目.学习视频. 一.长期必备. 1. StackOverflow,是疑难解答.bug排除必备网站,任何编程问题请第一时间到此网站查找. https://st ...
- Python入门、练手、视频资源汇总,拿走别客气!
摘要:为方便朋友,重新整理汇总,内容包括长期必备.入门教程.练手项目.学习视频. 一.长期必备. 1. StackOverflow,是疑难解答.bug排除必备网站,任何编程问题请第一时间到此网站查找. ...
- [MongoDB]Mongo基本使用
[MongoDB]Mongo基本使用: 汇总: 1. [MongoDB]安装MongoDB2. [MongoDB]Mongo基本使用:3. [MongoDB]MongoDB的优缺点及与关系型数据库 ...
- mongodb系列~mongo常用命令
mongodb常用命令大全1 索引相关命令 db.chenfeng.ensureIndex({"riqi":1}) 添加索引会阻塞nohup mongo --eval " ...
- MongoDB资料汇总专题
原文地址:http://bbs.chinaunix.net/thread-3675396-1-1.html 上一篇Redis资料汇总专题很受大家欢迎,这里将MongoDB的系列资料也进行了简单整理.希 ...
随机推荐
- intellij idea打jar包时的注意事项
intellij idea项目在打包maven项目时,数据路径很容易出现问题.在IDE内直接运行不会报错,但打成jar包运行就会报错. intellij打包的几种方式:http://www.cnblo ...
- PHP的简单易懂文件管理,可实现基本功能
我们利用的是嵌入PHP代码和ajax结合的方式,首相想到的是利用遍历文件的方式找出分件下的目录和文件,并且找到它们的路径,使用 dirname取上级目录, basename从完整路径中取文件名,其中最 ...
- [ZooKeeper.net] 3 ZooKeeper的分布式锁
基于ZooKeeper的分布式锁 ZooKeeper 里实现分布式锁的基本逻辑: 1.zookeeper中创建一个根节点(Locks),用于后续各个客户端的锁操作. 2.想要获取锁的client都在L ...
- 简学Python第六章__class面向对象编程与异常处理
Python第六章__class面向对象编程与异常处理 欢迎加入Linux_Python学习群 群号:478616847 目录: 面向对象的程序设计 类和对象 封装 继承与派生 多态与多态性 特性p ...
- 利用Register protocol实现网页调用桌面程序(类似迅雷、QQ等)
前言 我们经常看到 tencent://.. thunder:// 这两种开头的网址,往往觉得很奇怪,很想弄懂其中的原理,是如何实现的,我查找了相关的 资料,终于找到了,跟大家分享下. 原理篇 ...
- Hive 伪分布式下安装
本安装过程只作为个人笔记用,非标准教程,请酌情COPY.:-D Hive下载 下载之前,需先查看兼容的Hadoop版本,并安装hadoop,参考 http://www.cnblogs.com/yong ...
- java设计模式(1)
设计模式定义 设计模式原则 设计模式分类 常用设计模式 (一)设计模式定义 设计模式是针对软件设计中普遍存在的各种问题,所提出的解决方案. 换句话说,设计模式是一套被反复使用,多数人知晓的.经过分类的 ...
- HTTP协议(二)
一.请求的格式: (一).请求行 (1).请求方法 1.GET 2.POST 3.PUT 4.DELETE 5.TRACE 6.OPTIONS (2).请求路径 (3).所用的协议 (二).请求头信息 ...
- 如何使用bootstrap
前言: 前几天,本想做一个登陆界面,但自己写form表单必然很丑,所以想用下bootstarp框架,之前听别人说bootstrap很牛的样子.但我完全不会bootstrap... 下载&目录 ...
- Spring execution表达式
execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern) th ...