MongoDB增删改查简单入门

MongoDB启动

打开cmd,输入:

net start mongodb

即可启动mongodb,这里需要注意,我们需要用管理员权限打开cmd才可以,否则权限不够,无法启动
mongodb启动后就不用管理员权限了,可以打开普通cmd窗口,输入 mongo。进入shell,这时候我们就可以开始操作mongodb了

插入操作

最开始我们可以通过命令查看数据库名称:

show databases

就能查看数据库:
数据库查看
接着我们选择admin数据库:

use admin

就可以进入该数据库。
在musql中,数据库下面是数据表,数据表里面的数据是一列一列的,同一字段里面的数据类型一致。但是在mongodb中,数据库下面是集合,集合之下的单位是文档,每个文档里面的内容类型不一定相同。
我们可以通过命令看当前数据库下面有哪些集合:

show collections

在这里插入图片描述

我们在user这个集合中开始进行操作。
插入我们一般用insert命令来完成:

db.user.insert({_id:1,username:"zs",pasWord:"123456"})

这样就插入了一条文档。同理我们利用相同操作插入另外两条文档:
在这里插入图片描述
插入操作需要注意的是,当你不指定 _id 参数时,系统会自动分配一个_id给你,该_id在该集合中是唯一的,不会重复,当你指定一个id时,就会用你指定的_id。

查找操作

我们一般通过find()以及findOne()来实现查找操作
首先,我们可以通过文档中的任何属性来进行查找操作。
认识下find()命令:

db.collection.find()//是查看当前集合下所有文档
db.collection.find().pretty()//是把查询数据格式化输出。

在这里插入图片描述
我们在这里可以看到,查询出来的结果默认是按照_id的值降序排列的。
除此以外,我们还有findOne(),顾名思义,该命令只能查出来一个结果,那么很显然,假如我们执行它,返回的结果应该是_id为3的文档:
在这里插入图片描述
当然,我们也可以根据条件查询:

db.collection.find({_id:2})

查询结果:
在这里插入图片描述
除了这些以外,还有条件限制语句:

db.user.find().limit(2)

很明显,这里我们只查询两条文档,那么根据结果默认降序徕卡,我们会返回_id为3和2的文档
在这里插入图片描述

db.user.find().skip(1)

这里会跳过一条文档,会跳过按顺序排的第一条文档,具体会跳过_id为3的文档
在这里插入图片描述

db.user.find().sort({_id:1/-1})

sort时排序的意思,这里是按照_id排序,1是升序,-1是倒序。
我们还有一些操作符:

		$gt 大于
		$lt 小于
		$gte 大于等于
		$lte 小于等于
		$ne 不等于

具体应用:

db.user.find({_id:{$gt:1,$lt:3}})

这句话的意思是,查询id大于1,小于3的文档:
在这里插入图片描述
mongodb中没有and关键字,但是正如上面例子一样:db.user.find({_id:{ l t : 3 , lt:3, lt:3,gt:1}}),find()里面可以传入多个键值对,这样就算是and关键字。
除了and以外,还有or关键字,or和and不太一样,主要是格式不一样,使用and条件时,你住需要在find()里面传入一个文档即可,文档里面逗号分开条件即可。但是or需要用一个文档数组的形式,每个条件都是一个文档,条件与条件之间用逗号隔开。
比如:

db.user.find({$or:[{_id:1},{_id:3}]).pretty()

在这里插入图片描述
这里就是查询了id为1或者为3的数据

修改

修改很简单,两种方式。
1.通过update()更新:

db.user.update({_id:1},{$set:{username:"hhh"}})
db.user.find({_id:1})

在这里插入图片描述
这里可以看到,zs变成了hhh
2.通过save更新。
可以把save理解成insert。和insert操作一样,但是不同之处是,save是根据id进行操作的,当id相同时,就会覆盖原来的数据,变成新的数据。

删除

删除操作通过remove实现:

		db.collection.remove({}) //删除所有集合中的文档
		db.collection.remove({username:/h/}) //删除username中含有h的文档
		db.collection.remove({username:"th"},num) //删除集合中username叫th的文档,num参数是规定最多删num条文档,删除前num条,也就是说按照id的大小从大到小开始删除num条文档
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值