这是我参与「第四届青训营 」笔记创作活动的的第11天
结构理解
excel->工作表->数据(一行为一个) <==> 数据库->集合->文档
数据库增删改查语法
- 查看数据库
show databases - 创建数据库
有隐式创建 - 选择数据库
use 数据库名称//隐式创建 - 删除数据库 1.先选择要删除数据库 2.
db.dropDatabase()删除数据库
集合||文档 增删改查语法
- 查看集合
show collections - 创建集合
db.createCollection('集合名')//有隐式创建 - 创建数据 || 创建集合
db.集合名.insert(json数据)- 隐式创建集合
- json属性可以不加引号自动加
- 会自动添加一全球唯一的id
- 也可以自己在json中自己添加覆盖
- 一次添加多个文档
-
db.集合名.insert([json对象1,json对象2,...]) -
可以写for循环
for(let i=1;i<=10;i++){ db.集合名.insert(json对象) }
-
- 查看文档
db.集合名.find(条件[,查询的列])- 条件
- 不写则查询全部数据
- {age:6}查询age=6的数据
- {age:6,sex:'男'}查询两个条件都满足的数据
- {age:{$gt:5}}查询age>5的
- {age:{$in:[5,8,10]}}查询age=5,8,10的
- 查询的列
- 不写则全部查询
- {age:1}只看age列(id除外)
- {age:0}不看age列(id除外)
- 格式化文档
db.集合名.find().pretty()
- 条件
- 修改文档
db.集合名.updata(条件,新数据[,是否新增,是否修改多条])-
是否新增 : 如果条件匹配不到则插入(true||false)
-
是否修改多条 : 将匹配成功的数据都修改(true||false)
-
条件 || 新数据
db.集合名.updata({name:'lili'},{name:'pingping'})并不是只是修改name,而是整个替换,修改后数据只剩下name:'pingping'(除了id)db.集合名.updata({name:'lili'},{$set:{name:'pingping'}})只是修改name,和(1)相对
- 删除文档
db.集合.remove(条件,是否删除一条)- 是否删除一条(true一条,false全部)
-
- 总结
-
C(create):
db.集合名.insert(json数据) -
D(delete):
db.集合名.remove(条件[,是否删除一条]) -
U(Updata):
db.集合名.updata(条件,新数据[,是否新增,是否修改多条])- 升级语法
db.集合名.updata(条件,{修改器:{键:值}})
- 升级语法
-
R(read):
db.find(条件[,查询的列])
-