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的系列资料也进行了简单整理.希 ...
随机推荐
- SDWebImage下载图片的使用
第一步,下载SDWebImage,导入工程.github托管地址https://github.com/rs/SDWebImage 第二步,在需要的地方导入头文件 1 #import "UII ...
- 【SSH项目实战三】脚本密钥的批量分发与执行
[SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...
- 开启SQL Server执行占用时间显示和逻辑读取次数显示
两条命令 1:set statistics time on 这条命令会显示你编译这条语句和执行这条语句花多长时间 2.set statistics io on 这条命令会显示你逻辑读取了多少次数据库和 ...
- JQuery和原生JS跨域加载JSON数据或HTML。
前提:有时候需要在网页上,加载另一个网站上的数据.或者加载另一个网站上的一个页面.Js的Ajax请求不具备跨域功能,可以使用JQuery来实现. 网页端JS代码: $(function () { $. ...
- JVM中GC浅解:垃圾回收的了解
1.为什么要有GC 没有GC的世界,我们需要手动进行内存管理,但是内存管理是纯技术活,又容易出错.但是我们写码的目的是为了解决业务问题,所以可以把这种纯技术活自动化,当然自动化也是有代价的. 2.垃圾 ...
- Linux下python开发环境的准备
升级python 安装依赖: yum install lrzsz zlib zlib-devel openssl readline-deve gcc ibffi-devel python-dev ...
- Node.js服务端框架谁才是你的真爱
1. Express 背景: Express, 疯一般快速(而简洁)的服务端JavaScript Web开发框架,基于Node.js和V8 JavaScript引擎. Express 是一个基于 No ...
- 使用idea2017搭建SSM框架
搭建个SSM框架居然花费了我好长时间!特此记录! 需要准备的环境: idea 2017.1 jdk1.8 Maven 3.3.9 请提前将idea与Maven.jdk配置好,本次项目用的都是比较新的 ...
- Android -- 贝塞尔曲线公式的推导
1,最近看了几个不错的自定义view,发现里面都会涉及到贝塞尔曲线知识,深刻的了解到贝塞尔曲线是进阶自定义view的一座大山,so,今天先和大家来了解了解. 2,贝塞尔曲线作用十分广泛,简单举几个的栗 ...
- JDBC连接Oracle数据库代码
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...