位置: 编程技术 - 正文

MongoDB常用操作汇总(mongodb操作语句)

编辑:rootadmin

推荐整理分享MongoDB常用操作汇总(mongodb操作语句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongodb用法,mongodb使用场景 简书,mongodb的基本操作,mongodb的基本操作,mongodb用法,mongodb的操作命令,mongodb的基本操作,mongodb 操作,内容如对您有帮助,希望把文章链接给更多的朋友!

一、增删改查

查看当前数据库中所有的集合,使用命令

创建集合有两种方式,显示创建和隐式创建

向集合添加文档

使用命令 db.集合名称.insert({}),例如:

db.user1.insert({name:”jack”,age:})

删除集合中的文档

查询集合中的文档

查询集合中的文档,返回某些特定的键值除了查询表达式以外,MongoDB还支持一些额外的参数选项。如果仅仅只想返回某些特定的字段值:返回除了age字段外的所有字段db.user.find({},{age:0});

返回tags=tennis除了comments的所有列db.posts.find({tags:'tennis'},{comments:0});

返回userid=的name字段db.user.find({userid:},{name:1});{"_id":,"name":"user"}

返回x=john的所有z字段db.things.find({x:"john"},{z:1});

查询集合中的文档 ,使用条件表达式(<, <=, >, >=,!=)//大于: field > valuedb.collection.find({field:{$gt:value}});

//小于: field < valuedb.collection.find({field:{$lt:value}});

//大于等于: field >= valuedb.collection.find({field:{$gte:value}});

//小于等于: field <= valuedb.collection.find({field:{$lte:value}});

//不等于: field != valuedb.collection.find({field:{$ne:value}});

查询集合中的文档 ,统计(count)、排序(sort)、分页(skip、limit)

查询集合中的文档$all主要用来查询数组中的包含关系,查询条件中只要有一个不包含就不返回

$in,类似于关系型数据库中的IN

$nin,与$in相反

$or,相当于关系型数据库中的OR,表示或者的关系,例如查询name为user2或者age为3的文档,命令为:db.customer.find({$or:[{name:”user2”},{age:3}]})

$nor,表示根据条件过滤掉某些数据,例如查询name不是user2,age不是3的文档,命令为:db.customer.find({$nor:[{name:”user2”},{age:3}]})

$exists,用于查询集合中存在某个键的文档或不存在某个键的文档,例如查询customer集合中存在name键的所有文档,可以使用 db.customer.find({name:{$exists:1}})$exists:1表示真,指存在$exists:0表示假,指不存在

MongoDB常用操作汇总(mongodb操作语句)

游标

更新集合中的文档语法:db.collection.update(criteria,objNew,upsert,multi)参数说明:criteria:用于设置查询条件的对象objNew:用于设置更新内容的对象upsert:如果记录已经存在,更新它,否则新增一个记录,取值为0或1multi:如果有多个符合条件的记录,是否全部更新,取值为0或1

注意:默认情况下,只会更新第一个符合条件的记录一般情况下后两个参数分别为0,1 ,即:db.collection.update(criteria,objNew,0,1)

将集合中name为user1的文档改成name为jack:db.c1.update({name:"user1"},{name:"jack"})

$set 用来指定一个键的值,如果这个键不存在,则创建它。例如:给name为user1的文档添加address,可以使用命令:db.c1.update({name:”user1”},{$set:{address:”bj”}},0,1)将name为user1的文档修改address为tj,其它键值对不变,命令为:db.c1.update({name:”user1”},{$set:{address:”tj”}},0,1)

使用 $inc 将集合中name为user1的age加1,其它键不变, $inc表示使某个键值加减指定的数值db.c1.update({name:"user1"},{$inc:{age:1}})

$unset 用来删除某个键例如删除name为user1的文档中的address键,可以使用命令:db.c1.update({name:”user1”},{$unset:{address:1}},0,1)

二、索引:

索引就是用来加速查询的。数据库索引与书籍的索引类似:有了索引就不需要翻遍整本书,数据库则可以直接在索引中查找,使得查找速度能提高几个数量级。在索引中找到条目以后,就可以直接跳转到目标文档的位置。

普通索引:创建:db.collection.ensureIndex({key:1})查看关于索引的相关信息:db.collection.stats()查看查询使用索引的情况:db.collection.find({key:value}).explain()删除索引:db.collection.dropIndex({key:1})删除集合,也会将集合中的索引全部删除

唯一索引:创建:db.collection.ensureIndex({key:1},{unique:true})查看关于索引的相关信息:db.collection.stats()查看查询使用索引的情况:db.collection.find({key:value}).explain()删除索引:db.collection.dropIndex({key:1})删除集合,也会将集合中的索引全部删除

三、固定集合(capped collection)

固定集合指的是事先创建而且大小固定的集合 。

固定集合特性:固定集合很像环形队列,如果空间不足,最早的文档就会被删除,为新的文档腾出空间。一般来说,固定集合适用于任何想要自动淘汰过期属性的场景,没有太多的操作限制。

创建固定集合:db.createCollection(“collectionName”,{capped:true,size:,max:}); size指定集合大小,单位为KB,max指定文档的数量

当指定文档数量上限时,必须同时指定大小。淘汰机制只有在容量还没有满时才会依据文档数量来工作。要是容量满了,淘汰机制会依据容量来工作。

四、备份(mongodump)和恢复(mongorestore)

MongoDB提供了备份和恢复的功能,分别是MongoDB下载目录下的mongodump.exe和mongorestore.exe文件(即在mongodb bin目录下的命令)

备份数据使用下面的命令:mongodump -h dbhost -d dbname -o dbdirectory-h:MongDB所在服务器地址,例如:.0.0.1,当然也可以指定端口号:.0.0.1:-d:需要备份的数据库实例,例如:test-o:备份的数据存放位置,例如:c:datadump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。

恢复数据使用下面的命令:mongorestore -h dbhost -d dbname -directoryperdb dbdirectory-h:MongoDB所在服务器地址-d:需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2-directoryperdb:备份数据所在位置,例如:c:datadumptest

五、导入(mongoimport)和导出(mongoexport)

导出数据可以使用命令:mongoexport -h dbhost -d dbname -c collectionName -o output参数说明:-h 数据库地址-d 指明使用的库-c 指明要导出的集合-o 指明要导出的文件名

例:mongoexport -h localhost: -d test -c c4 -o d:/beifeng/c4.txt

导入数据可以使用命令:mongoimport -h dbhost -d dbname -c collectionname 文件的地址...参数说明:-h 数据库地址-d 指明使用的库-c 指明要导入的集合本地的文件地址...

例:mongoimport -h localhost: -d test -c cctv d:/beifeng/c4.txt

mongoDB 多重数组查询(AngularJS绑定显示 nodejs) 核心代码:js代码varLesson=Schema({lessonName:String,intr:String,creTime:Date,sort:String,//分类imgUrl:String,//封面地址price:Number,teacher:String,//教师subTitle:[{lNo:Number,subLName:S

mongoDB实现分页的方法 mongoDB的分页查询是通过limit(),skip(),sort()这三个函数组合进行分页查询的。下面这个是我的测试数据db.test.find().sort({"age":1});第一种方法查询第一页的数据

MongoDB进阶之动态字段设计详解 本文主要介绍的是关于MongoDB动态字段设计的相关资料,分享出来供大家参考学习,需要的朋友们下面来一起看看详细的介绍吧。适宜读者人群MongoDB开发

标签: mongodb操作语句

本文链接地址:https://www.jiuchutong.com/biancheng/312640.html 转载请保留说明!

上一篇:windows下安装mongodb以及node.js连接mongodb实例(mongodbwin7能安装么)

下一篇:mongoDB 多重数组查询(AngularJS绑定显示 nodejs)(mongodb 分组计数)

  • 公司代扣代缴个人所得税如何退税
  • 什么是资本利得?
  • 全年没有超过起征点需要汇算吗
  • 机票改签费能否抵税
  • 企业房屋折旧年限规定
  • 零售业进销差价会计分录实例
  • 财务记账之后是否必须审核
  • 长期股权投资成本法核算
  • 销售货物尚未收到会计分录
  • 收到抵物广告费的会计处理怎么做?
  • 商品销售赠送部分要交税吗
  • 不征税收入税收政策
  • 一般纳税人和小微企业的区别
  • 建筑企业成本票是含税价还是不含税价
  • 建筑劳务公司人员结构
  • 食堂费用没有发票能挂账吗
  • 税务局减免的税金会计分录
  • win10禁止使用网络
  • 财务报表包括哪三大报表?(多选)
  • 民间非盈利组织会计信息的使用者
  • 如何激活windows10免费
  • 洗车店如何开
  • env文件夹是什么文件
  • 没收到windows11更新
  • php5.4+mysql
  • 完工产品成本的直接材料怎么算
  • 公司购买货物
  • win7纯净版本
  • vue设置图片
  • vue页面路由传参
  • php中哪个命令用来删除当前目录
  • 支付的招标代理费计入成本还是费用
  • 借银行卡给别人过账有什么风险
  • 增值税专用发票丢了怎么补救
  • dl.php怎么打开
  • php mysql pdo
  • 玩转ChatGPT:中科院ChatGPT Academic项目部署与测评
  • vue-router导航守卫
  • eltable数据多 卡
  • php array 函数
  • centos7编译安装内核
  • 款付了对方没开发票咋办
  • 股东转让股份会退股吗
  • 上市公司净资产转正的方法
  • 借方贷方有哪些
  • 租赁公司一般都有什么税
  • mysql error!
  • 备用金用发票核销去哪核销
  • 增值税扣缴义务发生时间为扣缴义务人扣缴税款的当天
  • 营改增行业销售额的确定
  • 住宿费用专票可以抵扣吗
  • 支付水电费会计等式
  • 交车辆购置税需要什么材料
  • 企业收付实现制还是权责发生制
  • 其他业务支出包括哪些内容科目
  • 暂估成本的两种形式
  • my sql命令
  • win7系统怎样
  • 安装win8系统需要什么条件
  • linux进程管理器
  • mmc.exe是什么
  • Linux系统中的pycharm怎么打开
  • win7电脑能登qq但打不开网页怎么办
  • win10 rs1是什么版本
  • win8操作
  • linux wc命令详解
  • win10预览体验计划不显示
  • windows7怎么解除密码
  • windows2008输入法
  • linux中安装软件可使用哪些方式
  • 逐一介绍班子成员表现
  • 在shell命令行方式下,一行只能
  • python常用的安装扩展
  • unity每秒执行一次
  • unity双面材质
  • 如何解决android兼容问题
  • android studio 安装步骤
  • 大连市国家税务局官网登录
  • 呼和浩特新城区政府官网
  • 医务人员抗疫补助发放标准最新
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设