MongoDB数据库之添删改查


Posted in MongoDB onApril 26, 2022

一、增加

insert向数据库中插入集合

插入一条记录,传入集合

db..insert()
db.students.insert({name:"唐僧",age:60,gender:"M"})

插入多条记录,传入数组

db.students.insert([{name:"猪八戒",age:53,gender:"M"},{name:"沙僧",age:50,gender:"M"}])

默认生成时间戳id,确保数据唯一,原理是调用如下语句,可以自行指定id

默认:

ObjectId()

自行指定:

db.students.insert({_id:"001",name:"白骨精",age:60,gender:"W"})

MongoDB数据库之添删改查

insertOne向数据库中插入集合

插入一个文档对象,只能传入一个文档,不能传入数组

db.students.insertOne({_id:"002",name:"铁扇公主 ",age:60,gender:"W"})

insertMany向数据库中插入集合

插入多个文档对象,只能传入一个数组,即使只存在一个文档,不能传入文档

db.students.insertMany([{_id:"004",name:"牛魔王",age:60,gender:"M"},{_id:"005",name:"红孩儿",age:60,gender:"M"}])

其实是对insert的拆分

二、查询

查询集合中所有符合条件的文档

find进行查询集合所有文档

db.students.find();
db.students.find({});

find进行条件查询

{}:表示集合中所有文档;

{属性:值} 查询属性是指定值的文档

db.students.find({_id:"002"});

db.students.find({_id:"002",name:"刘德华"});

db.students.find({_id:"002"}).count(); ----查看查询的文档的数量

db.students.find({_id:"002"}).length();

find返回值为数组,可以通过下标获取对应值

findOne进行条件查询

findOne返回的为Object,可以用返回值.对象

查询集合中符合条件的第一个文档,最多一条文档

db.students.findOne({name:"AideHua"});

三、修改

update(查询条件,新对象)

db..update(查询条件,新对象)

如:db.students.update({_id:"002"},{age:18}) 注意:将会用新对象{age:18}替换之前旧对象

修改前

MongoDB数据库之添删改查

修改后

MongoDB数据库之添删改查

update(查询条件,{$set:修改文档属性})

db.students.update({_id:"004"},{$set:{age:180}})

MongoDB数据库之添删改查

修改操作符

set ------修改文档指定属性

unset------删除文档指定属性(和值无关)

默认只会修改一个

如果想要进行修改多个,指定可选参数multi

db.students.update({_id:"004"},{$set:{age:880}},{multi:true})

updateMany()

同时修改多个符合条件的文档

匹配多少个,就会修改多少个的值

db.students.updateMany({_id:"004"},{$set:{age:180}})

updateOne()

修改一个符合条件的文档

只会修改匹配的第一个

db.students.updateOne({_id:"004"},{$set:{age:180}})

replaceOne()

替换文档

四、删除

remove()

删除符合条件的而所有文档,默认删除所有,删除单个需要指定可选参数justOne为:true

删除多个,默认情况

db.students.remove({name:"Liming"})

删除单个

db.students.remove({name:"Liming"},true)

必须指定参数,否则报错,注意和find()区别

db.students.remove();//报错

删除所有文档,但是集合还是存在的

db.students.remove({});

删除集合,若是数据库的最后一个人集合,那么数据库也会被删除

db.students.drop();

deleteOne()

删除一个

db.students.deleteOne({name:"Liming"})

deleteMany()

删除多个

db.students.deleteMany({name:"Liming"})

到此这篇关于MongoDB实现增删改查的文章就介绍到这了。


Tags in this post...

MongoDB 相关文章推荐
MongoDB balancer的使用详解
Apr 30 MongoDB
MongoDB orm框架的注意事项及简单使用
Jun 20 MongoDB
详解MongoDB的条件查询和排序
Jun 23 MongoDB
Mongo服务重启异常问题的处理方法
Jul 01 MongoDB
阿里云服务器部署mongodb的详细过程
Sep 04 MongoDB
mongodb清除连接和日志的正确方法分享
Sep 15 MongoDB
SpringBoot系列之MongoDB Aggregations用法详解
Feb 12 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
MongoDB数据库部署环境准备及使用介绍
Mar 21 MongoDB
Mongodb 迁移数据块的流程介绍分析
Apr 18 MongoDB
详解MongoDB排序时内存大小限制与创建索引的注意事项
May 06 MongoDB
Mongodb 迁移数据块的流程介绍分析
SpringBoot集成MongoDB实现文件上传的步骤
Apr 18 #MongoDB
Centos系统通过Docker安装并搭建MongoDB数据库
MongoDB修改oplog大小的四种方法
Apr 11 #MongoDB
MongoDB支持的索引类型
Apr 11 #MongoDB
MongoDB支持的数据类型
Apr 11 #MongoDB
MongoDB误操作后使用oplog恢复数据
Apr 11 #MongoDB
You might like
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
PHP中使用sleep函数实现定时任务实例分享
2014/08/21 PHP
许愿墙中用到的函数
2006/10/07 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
js实现导航栏中英文切换效果
2017/01/16 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
记一次vue去除#问题处理经过小结
2019/01/24 Javascript
Layui事件监听的实现(表单和数据表格)
2019/10/17 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
javascript 设计模式之组合模式原理与应用详解
2020/04/08 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
2020/05/16 Javascript
vue axios封装httpjs,接口公用配置拦截操作
2020/08/11 Javascript
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
Python实现将xml导入至excel
2015/11/20 Python
Python实现带百分比的进度条
2016/06/28 Python
Python多层装饰器用法实例分析
2018/02/09 Python
Python反转序列的方法实例分析
2018/03/21 Python
Python使用OpenCV进行标定
2018/05/08 Python
Python内存管理实例分析
2019/07/10 Python
pycharm显示远程图片的实现
2019/11/04 Python
在python中求分布函数相关的包实例
2020/04/15 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
2021/01/12 Python
西尔斯百货官网:Sears
2016/09/06 全球购物
公务员培训自我鉴定
2014/02/01 职场文书
销售人员职业生涯规划范文
2014/03/01 职场文书
中秋寄语大全
2014/04/11 职场文书
公司离职证明样本
2014/09/13 职场文书
2015年119消防宣传日活动总结
2015/03/24 职场文书
趣味运动会新闻稿
2015/07/17 职场文书
2016年教师党员公开承诺书
2016/03/24 职场文书
2019年幼儿园管理条例范本!
2019/07/17 职场文书
WordPress多语言翻译插件 - WPML使用教程
2021/04/01 PHP
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
浅谈python数据类型及其操作
2021/05/25 Python
mybatis中注解与xml配置的对应关系和对比分析
2021/08/04 Java/Android
使用JS前端技术实现静态图片局部流动效果
2022/08/05 Javascript