个人学习心得

MongoDB教程(部分的,可能不全,我是一名初学者,实习生)
1,
–创建数据库
A:
use database_name (创建数据库)
B:
db (可查看创建的数据库,show dbs可参看全部的数据库)
C:
db.database_name.insert({“字段名”:“值”})
D:
show dbs (即可查看到刚刚创建的数据库的值,因为刚刚创建的数据库是没有值是无法显示的)
注意:在mongodb中默认的数据为test如果没有创建新的数据库,值默认保存在test数据库中
2,
–删除数据库
A:
show dbs (查看所有数据库)
B:
use databaseName (进入该数据库)
C:
db.dropDatabase() (即可删除该数据库)

3,
–创建集合(类似于表)
A:
use database_name (进入database_name数据库)
B:
show collections 或者show tables 命令可以查看已有集合
C:
db.createCollection(“集合名称”,{参数})

4,
–删除集合(即删除该数据库下面的表结构)
A:
use database_name (进入该数据库)
B:
show collections (查看)
C:
db.collection_name.drop() (即可删除)

5,
–插入文档
A:
use database_name (进入该数据库)
B:
show collections (查看)
C:
db.collection_name.insert({ 字段 :’ 内容’ , 字段2:‘内容2’ })

或者定义一个变量存放数据
value_name=({ 字段 :’ 内容’ , 字段2:‘内容2’ })
db.collection_name.insert(value_name)

6:
– 一次插入多条数据
var arr = []; (定义一个语句)
for(var i=1 ; i<=20 ; i++){
arr.push({num:i});
}
db.collection_name.insert(arr);

7:
– 删除文档
A:
db.collection_name.deleteMany({}) (删除集合下的全部文档)
B:
db.collection_name.deleteOne({status:“A”}) (删除status等于A的一个文档) 列如 db.col.deleteOne({title:“高等数学”}) 删除一个title为高等数学的数据
C:
db.collection_name.deleteMany({status:“A”}) (删除status等于A的全部文档)

8:
– 查询文档
A:
db.collection_name.find().pretty()

B: (MongoDB与RDBMS where语句比较)

等于 db.collection_name.find({“title”:“菜鸟教程”}) 类似于RDMS中的类似语句 where title=‘菜鸟教程’
大于 db.collection_name.find({“title”:{KaTeX parse error: Expected 'EOF', got '}' at position 6: lt:50}̲}) 类似于RDM…gt:50}}) 类似于 where title< 50; gte小于等于

C: (mongoDB的OR条件)
db.collection_name.find({$or:[{key1:value1},{key2:value2}]})

D: (mongoDB的or条件 ,and条件)
db.collection_name.find(“key1”:“value1”,$or[{‘key2’:‘value2’},{‘key3’:‘value3’}])

9:
– mongoDB 条件操作符
– A: 常用的操作符有大致四种,如下
KaTeX parse error: Expected '}', got 'EOF' at end of input: …find({"key1" :{gt : value1}})
$gte 大于等于
$lt 小于
$lte 小于等于

db.collection_name.deleteMany({}) – 删除所有数据

– B: mongoDB 使用(< )和 (>) - l t 和 lt 和 ltgt
db.collection_name.find()

10:
–mongodb 的limit和skip语法

–A limit语法如下
db.collection_name.find({}).limit(NUMBER)

列如:db.col.find({},{“title”: 1, “_id”:0}).limit(2) “title”:1 ,表示显示,"_id":0 表示隐藏 ,限制了两个

– B skip()方法
db.col.find({},{“title”: 1, “_id”:0}).limit(2).skip(1) 跳过第一个title显示第二个

11:
– mongodb的排序

db.collection_name.find({}).sort(“key”:-1or1) -1表示倒序,1表示正序

12:
–mongodb的索引 createIndex()方法

A:语法格式如下所示:
db.collection_name.createIndex(keys,options) – key值为你要创建的索引字段,options 为1 升序创建索引,-1为降序创建索引

B:查看集合索引
db.collection_name.getIndexes()

C:查看集合索引大小
db.collection_name.totalIndexSize()

D:删除集合所有索引
db.col_name.dropIndex()

E:删除集合指定索引
db.co_name.dropIndex(“索引名称”)

13: mongodb 聚合
A:语法
db.cmy.aggregate([{KaTeX parse error: Expected '}', got 'EOF' at end of input: group:{_id:"length",likes:{$max:“likes”}}}]) – 分组排序,按照length排序,查看各length中likes的最大值

B:管道的概念(一般用于将当前命令的输出作为下一个命令的参数)
1,以project举例
db.cmy.aggregate({KaTeX parse error: Expected 'EOF', got '}' at position 27: …tle:1,author:1}}̲) 这样的话结果中就只有_id…project:{title:1,author:1}})
2,KaTeX parse error: Expected '}', got 'EOF' at end of input: …cmy.aggregate({skip:5})
db.cmy.aggregate({$skip:1}) --跳过cmy表单的第一条数据 ,类似于 db.cmy.find({}).skip(1)
14:
– mongodb 复制(副本集)
A:
复制作用: 提高了数据的可用性,保证数据安全

B: (mongodb的复制原理)
mongodb的复制至少需要两个节点。其中一个主节点(primary)是复制处理客户的请求,从节点(secondary)负责复制主节点的数据备份,所以数据是
同步的;
常见的搭配方式为:一主一从,一主多从 的搭配方式

采用db.isMaster()判断是否为主节点

15:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值