一、 基础入门

1、 下载mongodb安装包进行安装

2、 在运行mongodb前创建一个文件夹如:db来存放mongodb的数据

3、 微软徽标+R,输入cmd,首先找到“mongodb/bin”的路径,然后运行mongod开启命令,同时用–dbpath指定数据存放地点为“db”文件夹。

mongod --dbpath F:\mongo\data

注意:运行后再浏览器中访问localhost:27017输出一句话后则成功启动mongodb

Mongodb基本操作

新增数据库

Use dbName

查看所有数据库 show dbs注意:查看数据库如果数据库没有数据则不会显示
删除数据库

db.dropDatabase()

创建集合:

db.createCollection(name)

注意:如果添加数据时没有集合会自动创建集合
删除集合:

db.collection.drop()

4、 最简单的增删改查

打开cmd定位到bin目录输入mongo进入shell命令输入界面

(1)、insert插入数据

当使用mongo进入shell时会自动进入test数据库然后直接输入db.web39.insert({“name”:”小明”,”age”:18})就可以添加一条数据
注意:mongodb是可以不用手动创建数据集合(数据表)不用手动创建字段名、会根据所添加的数据自动分配字段名

(2)、find查询

通过:db.web39.find()这样就可以查询到web39下面的所有数据

(3)、update修改

注意:update有两个参数、第一个为查询条件、第二个参数为修改的值
Db.web39.update({“name”:”xxx”},{“age”:18})
注意:updata修改时没做其他处理会吧第二个参数中没有填写的字段名全部去除

(4)、remove删除

注意:千万别使用remove()不带参数否则后果自负
Remove(“age”:18)

二、 详细讲解增删改查

1、 注意如果再次运行mongod时发生错误请删除数据存储文件db下的lock file文件 没发生错误不用管
Insert操作
单条数据插入:
(1) insert中的语法与json一样、可以是字符串、数组、也可以是嵌套的对象

 db.web39.insert({"name":"小明","password":"123456","address":{"city":"重庆"},"
tel":"18423075400","link":["打篮球","打麻将","斗地主"]})

多条数据插入:
可以再shell中提前编写一个对象如:

var obj = [{"name":"小明","age":18},{"name":"小明","age":18},{"name":"小明","a
ge":18},{"name":"小明","age":18},{"name":"小明","age":18},{"name":"小明","age":1
8}]

在使用for循环插入数据

For(var i =0;i<obj.length;i++){Db.web39.insert(obj[i])
}

Find操作
1、<、>、<=、>=、!=、= 注意匹配的是数值
大于:

Db.web39.find({“age”:{$gt:18}})查询age大于18的数据

大于等于:$gte
小于:

Db.web39.find({“age”:{$lt:18}})查询age小于18的数据

小于等于:lte不等于:lte 不等于:lte不等于:ne

Db.web39.find({“age”:{$nt:18}})查询age不等于18的数据

等于:{“age”:18}
Count:查询数据条数

Db.web39.count()
Db.web39.count({name:xxx})

Limit控制查询条数

Db.web39.find().limit(2)查询两条数据

skip:查询时跳过指定条数

db.web39.find().skip(3)跳过3条数据查询

limit与skip结合使用就可以实现分页查询

db.web39.find().limit(3).skit(xx)

排序sort({xxx:1/-1}) 1升序 -1降序
Group分组查询

Db.web39.group({Key:{‘字段名’:true},Reduce:function(obj[当前文档],字段名){字段名.count++},Initial:{count:0}
}
)

Key/reduce/initial必写参数
Cond:条件判断类似sql中的where
Distinct:去除重复值
Db.web39.distinct(‘age’)

2、 and/or/in

(1)、and &&
Db.web39.find({“name”:”二狗子”,”age”:18})
(2)、or ||
Db.web39.find({KaTeX parse error: Expected 'EOF', got '}' at position 14: or:[{},{},{}]}̲) (3)、in Db.…in:[‘值1’,’值2’]}})
KaTeX parse error: Expected '}', got 'EOF' at end of input: …Db.web39.find({where:function(){}})

Update

1、 整体更新:当更新数据后如果在跟新是没有填写所有字段则没填写的字段都会被删掉
2、 局部更新:使用KaTeX parse error: Expected '}', got 'EOF' at end of input: …e({name:’小明’},{set:{age:100}})
3、 upsert:在使用update修改时第一个参数为查找、如果没有查找到想要修改的数据则添加一条数据在update第三个参数设置为true即可
db.web39.update({xxx:xxx},{xxx:xxx},true)
4、 批量更新:使用{multi:true}启用批量更新但是必须配合KaTeX parse error: Expected '}', got 'EOF' at end of input: …te({name:/小/},{set:{age:20}},{multi:true})
Remove操作
这个操作在上一篇简单的说过,这里就不赘述了。
删除多条数据
Db.xxx.remove({age:18})
删除一条数据
Db.xxx.remove({age:18},true)
删除所有
Db.xxx.remove({})

Mongodb导出导入

1、 导出数据库mongodump –d 要导出的数据库名称 –o 导出的保存路径
Mongodump –d student –o F:\mongo\db\student
2、 导入数据库mongorestore F:\mongo\db

mongodb数据库学习笔记相关推荐

  1. 尚硅谷+黑马程序员MongoDB视频学习笔记(一)

    本学习笔记是来源于学习B站上的尚硅谷和黑马的MongoDB教学视频而做的知识总结. 一.数据库(Database) 数据库是按照数据结构来组织.存在和管理数据的仓库.说白了,数据库就是存在数据的仓库. ...

  2. 数据库学习笔记第一弹——MySQL8.0和MySQL5.7的下载、安装与配置(图文详解步骤2022)

    数据库学习笔记第一弹--MySQL8.0和MySQL5.7的下载.安装与配置(图文详解步骤2022) 文章目录 数据库学习笔记第一弹--MySQL8.0和MySQL5.7的下载.安装与配置(图文详解步 ...

  3. 数据库学习笔记(1)

    数据库学习笔记(1) 文章目录 数据库学习笔记(1) @[toc] DB 基本概念 连接数据库的三要素 元数据 mongoose 查询符合对象数组中某个对象的值 redis 是什么 存储的数据类型 r ...

  4. linux数据库创建score表,MySQL数据库学习笔记

    MySQL数据库学习笔记phpma (实验环境:Redhat9.0,MySQL3.23.54) 纲要: 一,连接MySQL phpma 二,MySQL管理与授权 三,数据库简单操作 四, 数据库备份 ...

  5. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  6. 【数据库学习笔记】——cursor游标对象

    目录 1.创建cursor对象 2.cursor对象常用方法 3.操作数据库的常见流程(五部曲) 课程视频链接: 第14节 Python操作数据库_哔哩哔哩_bilibili666https://ww ...

  7. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)...

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  8. 【数据库学习笔记】Day03 - SQL语言基础及数据库定义功能

    [数据库学习笔记]Day03 - SQL语言基础及数据库定义功能 〇.本文所用数据库表格: 一.关系运算: 关系运算,数学名词,基本运算有两类:一类是传统的集合运算(并.差.交等),另一类是专门的关系 ...

  9. Mongodb使用学习笔记(二)

    文章目录 Mongodb使用学习笔记(二)之查询篇 1. MongoDB命令学习 (1) MongoDB 查询文档 1.1 全部查询 1.2 单条件查询 1.3 多条件查询 1.3.1 AND拼接多条 ...

最新文章

  1. canvas做一个简单气泡图
  2. Office远程代码执行漏洞补丁(905413)
  3. 『数据库』朴实无华且枯燥的数据库文章--关系数据理论
  4. 分数化简_分数应用题七讲 (一) 图示法解分数应用题
  5. java mongodb 关闭连接_如何在mongodb上使用java驱动程序保持连接池关闭?
  6. 图嵌入表示TADW:当DeepWalk加上外部文本信息
  7. 如何在本机使用正式版的SAP Business One的Common库的Lisence服务
  8. Tomcat—启动时控制台显示文字的颜色
  9. android root测试,[原创]安卓逆向之绕过root检测的四种姿势
  10. php 过滤微信符号昵称,PHP处理微信昵称特殊符号过滤方法
  11. TGA格式图片文件分析
  12. 惯性测量单元预积分原理与实现
  13. 一个公众号可以绑定几个小程序_微信开放平台可以绑定几个小程序和公众号?...
  14. java map 参数传递_Java参数传递分析
  15. 石家庄科技工程职业学院计算机系,石家庄科技工程职业学院学生社团
  16. android QCN备份还原方法
  17. 游戏服务器技能系统,MMORPG游戏服务器技能系统设计【上篇】 - 踏踏实实,认真工作 - CSDN博客...
  18. 转:杰克·韦尔奇: 好的CEO既有勇气放手,又懂得干涉
  19. 故障分析 | 数据库故障 MHA 未切换
  20. 7.4 Java(农夫果园【5】:一个农场,专门种植销售各类水果,在这个系统中需要描述下列水果葡萄、草莓、苹果)

热门文章

  1. 学习Python需要用的开发工具
  2. CMake编译C++项目-简单范例-编译脚本-Linux
  3. 首次不依赖生成模型,一句话让AI修图!
  4. 基于simulink的PN码伪码匹配的同步仿真,包括解调,伪码匹配,fft等模块
  5. matlab拟合伽玛曲线,HDR详解 - 伽玛曲线
  6. 赋能 打造应对不确定性的敏捷团队 pdf_“复”有诗书气自华之赋能 —— 打造应对不确定性的敏捷团队...
  7. 关于apk加壳之动态加载dex文件
  8. 教你如何简单压缩过大的PDF文件
  9. 基于单片机的CO浓度检测及报警系统设计(电路+程序流程)
  10. 计算机等级考试进制转换,计算机等级考试进制转换及常用函数