MongoDB 去重 分组(针对于某个field 或者 组合项的去重)
2015-08-28 10:57
453 查看
Document sss的数据如下:
一.根据成条数据(也就是所有field)来去重:
1. 使用mapRrduce函数来去重:
效果如下:
然后我们可以通过遍历的方式把value的不重复myid,age,name拼成我们要的document格式。
2. 换一下思路,使用$group方式来实现:
得到的结果是:
二.针对于某个field的去重,不care other field
这里我们要是的是针对于myid这个field来去重:
1.用最最老的方法遍历实现:
效果如下:
2.换一下思路:就是在查重后存放的collection,我们能否先定义好要查重的field的unique index,这样我们在insert数据得时候,就不用考虑是否会重复的问题了。我试了一下,结果如下:
先在我们要存放的collection里面建立unique index:myid,
注意:ensureIndex的时候必须先确定你要去重的field在collection里面重复值
再通过foreach()方法把数据一一insert到collection里面,
效果如下:
3.通过mapReduce的方法
出来的效果:
一.根据成条数据(也就是所有field)来去重:
1. 使用mapRrduce函数来去重:
效果如下:
然后我们可以通过遍历的方式把value的不重复myid,age,name拼成我们要的document格式。
2. 换一下思路,使用$group方式来实现:
得到的结果是:
二.针对于某个field的去重,不care other field
这里我们要是的是针对于myid这个field来去重:
1.用最最老的方法遍历实现:
效果如下:
2.换一下思路:就是在查重后存放的collection,我们能否先定义好要查重的field的unique index,这样我们在insert数据得时候,就不用考虑是否会重复的问题了。我试了一下,结果如下:
先在我们要存放的collection里面建立unique index:myid,
注意:ensureIndex的时候必须先确定你要去重的field在collection里面重复值
再通过foreach()方法把数据一一insert到collection里面,
效果如下:
3.通过mapReduce的方法
出来的效果:
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- 分享微信开发Html5轻游戏中的几个坑
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- 如何在 Fedora 上安装 MongoDB 服务器
- JavaScript演示排序算法
- PHP添加yaf xhprof mongodb 同理
- mongodb安装
- javascript实现10进制转为N进制数
- 如何在 Ubuntu 上安装 MongoDB
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- JavaScript拆分字符串时产生空字符的原因
- IE8开发人员工具教程(二)
- 在flex中执行一个javascript方法的简单方式
- Flex结合JavaScript读取本地路径的方法
- PowerShell中执行Javascript的方法示例