MongoDB 学习小笔记
1、配置:mongod --dbpath=D:\MongoDB\data
mongo
2、基本的增删查改
find() update()-- 整体更新,局部更新。
修改器: $inc db.person.update({"age":23},{$inc:{"salary":1000}})
第一个参数为条件。第二个参数为修改的值,但值必须为整数。($inc allowed for numbers only)
$set 修改器: db.person.update({"name":"gll"},{$set:{"age":25}}}
还有一种操作为修改或添加操作:这里可以叫insertOrUpdate操作。
只要将update的第三个参数设为true即可。如果没有查到,就在数据库里新增一条,避免数据库里判断是update还是add操作。使用简单。
批量更新:
如果匹配多条的话, 默认的情况下只更新第一条。如果需要多条更新的话,在update的第四个参数中设为true即可。也很简单。
Remove 操作。
3、高级操作
聚合:
count() distinct() 选择了哪个属性,哪个就不能重复。
group() 参数 key : 指定文档分组的依据,所有的age键的值划分到一组,true为返回键age的值。
initial: "initial":{"person":[]} 每一组reduce函数调用的初始个数,第一组的所有成员都会使用这个累加器。
说白了。这个就是个初始值。每次$reduce 都会调用这个值进行值的改变。
例子:
db.person.group({
. "key":{"age":true},
. "initial":{"person":[]},
. "$reduce":function(cur,prev){ 第一个参数为当前文档,第二个参数为累加器文档
. prev.person.push(cur.name);
. }
. })
eg : db.person.group({
"key": {
"age": true
},
"initial": {
"person": [
]
},
"$reduce": function(doc,out){
out.person.push(doc.name);
},
"finalize": function(out){
out.count=out.person.length;
},
"condition": {
"age": {
$lt: 25
}
}
MongoDB 学习小笔记的更多相关文章
- # ML学习小笔记—Gradien Descent
关于本课程的相关资料http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html 根据前面所为,当我们得到Loss方程的时候,我们希望求得最优的Loss方 ...
- English - 英语学习小笔记
1.It is...to do sth:做某事是.... 解析:It 是形式主语,后面一半接形容词做表语,to do sth是不定式短语作真正主语. 2.make do和make doing是两种表达 ...
- WEB学习小笔记
环境基于WIN10.IDEA最新版.JDK1.8.TOMCAT9 下面说的有错的地方希望指出,谢谢. STRUT2 1.在maven下的时候系统会系统创建一个叫做log4j的配置文件,但是到了这个版本 ...
- # ML学习小笔记—Classification
关于本课程的相关资料http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html 通过模型可以分类输入,此时根据分类结果的正确与否会有一个Loss函数.找 ...
- SQL 学习小笔记
1.FOUND_ROWS() 题目: ,; 在上边sql中使用什么选项可以使 SELECT FOUND_ROWS()忽略LIMIT子句,返回总数? *答案* : SQL_CALC_FOUND_ROWS ...
- java学习小笔记(三.socket通信)【转】
三,socket通信1.http://blog.csdn.net/kongxx/article/details/7288896这个人写的关于socket通信不错,循序渐进式的讲解,用代码示例说明,运用 ...
- # ML学习小笔记—Where does the error come from?
关于本课程的相关资料http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html 错误来自哪里? error due to "bias" ...
- # ML学习小笔记—Linear Regression
Regression Output a scalar Model:a set of function 以Linear model为例 y = b+w * $x_cp$ parameters:b,W f ...
- vue 的个人学习小笔记
一.vite2.0+vue3.0+ts 创建.配置 个人公众号文章地址 个人github仓库地址 1.Vite 创建 vue3 项目: 1.1.npm 常用命令 1.npm 查看版本号 npm vie ...
随机推荐
- 整合spring之后,struts2里面的自定义拦截器的invocation.invoke()总是返回input
这个真的是整死我了,还好看见了一篇博客提示了我, 解决方法: 在spring的bean配置中我没有设置action的作用域为prototype,也就是多例的,如果不设置则就会是默认的singleton ...
- 【Spark机器学习速成宝典】模型篇02逻辑斯谛回归【Logistic回归】(Python版)
目录 Logistic回归原理 Logistic回归代码(Spark Python) Logistic回归原理 详见博文:http://www.cnblogs.com/itmorn/p/7890468 ...
- sql server中 设置与查看锁的超时时间(ZT) @@LOCK_TIMEOUT
在数据库的应用系统中,死锁是不可避免的.通过设置死锁的处理优先级方法,可以在数据库引擎中自动检测到死锁,对发生的死锁会话进行干预,从而达到解除死锁的目点,但在这种情况下,会话只能被动的等待数据库引 ...
- 浏览器端-W3School-Browser:Window 对象
ylbtech-浏览器端-W3School-Browser:Window 对象 1.返回顶部 1. Window 对象 Window 对象 Window 对象表示浏览器中打开的窗口. 如果文档包含框架 ...
- Color色彩
Element 为了避免视觉传达差异,使用一套特定的调色板来规定颜色,为你所搭建的产品提供一致的外观视觉感受. ¶主色 Element 主要品牌颜色是鲜艳.友好的蓝色. Blue #409EFF ¶辅 ...
- Java SE 8 docs——Static Methods、Instance Methods、Abstract Methods、Concrete Methods和field
一.Static Methods.Instance Methods.Abstract Methods.Concrete Methods ——Static Methods:静态方法 ——Instance ...
- elasticsearch 修改 mapping
Elasticsearch的mapping一旦创建,只能增加字段,而不能修改已经mapping的字段.但现实往往并非如此啊,有时增加一个字段,就好像打了一个补丁,一个可以,但是越补越多,最后自己都觉得 ...
- 临时产品id记录
id: 5095552c4fb94e01b37561fac5b20b42 cf51ceb55f5341b78592e8fead31e5c8
- Unity 动画属性
在动画的使用上使用不当的设置往往会造成不可预料的结果. 首先,如果动画自身可以驱动物体移动,那么在Animator组件上必须选择apply root motion,物体的动画位移才能生效,否则动画只能 ...
- [深度应用]·Keras极简实现Attention结构
[深度应用]·Keras极简实现Attention结构 在上篇博客中笔者讲解来Attention结构的基本概念,在这篇博客使用Keras搭建一个基于Attention结构网络加深理解.. 1.生成数据 ...