`

MongoDB——第二天 细说增删查改

 
阅读更多

看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongodb,突然

傻眼了,擦,竟然开启不了,仔细观察“划线区域“的信息,发现db文件夹下有一个类似的”lock file”阻止了mongodb的开启,接下来我们要做的就

是干掉它,之后,开启成功,关于mongodb的管理方式将在后续文章分享。

 

一: Insert操作

     上一篇也说过,文档是采用“K-V”格式存储的,如果大家对JSON比较熟悉的话,我相信学mongodb是手到擒来,我们知道JSON里面Value

可能是“字符串”,可能是“数组”,又有可能是内嵌的一个JSON对象,相同的方式也适合于BSON。

      常见的插入操作也就两种形式存在:“单条插入”和“批量插入”。

   

    ①  单条插入

          先前也说了,mongo命令打开的是一个javascript shell。所以js的语法在这里面都行得通,看起来是不是很牛X。      

    

   ② 批量插入

      这玩意跟“单条插入”的差异相信大家应该知道,由于mongodb中没有提供给shell的“批量插入方法”,没关系,各个语言的driver都打通

了跟mongodb内部的批量插入方法,因为该方法是不可或缺的,如果大家非要模拟下批量插入的话,可以自己写了for循环,里面就是insert。

 

二:Find操作

     日常开发中,我们玩查询,玩的最多的也就是二类:

     ①: >, >=, <, <=, !=, =。

     ②:And,OR,In,NotIn

这些操作在mongodb里面都封装好了,下面就一一介绍:

    <1>"$gt", "$gte", "$lt", "$lte", "$ne", "没有特殊关键字",这些跟上面是一一对应的,举几个例子。

   

<2> "无关键字“, "$or", "$in","$nin" 同样我也是举几个例子

 

  

<3> 在mongodb中还有一个特殊的匹配,那就是“正则表达式”,这玩意威力很强的。

 

<4> 有时查询很复杂,很蛋疼,不过没关系,mongodb给我们祭出了大招,它就是$where,为什么这么说,是因为$where中的value

  就是我们非常熟悉,非常热爱的js来助我们一马平川。

 

三:Update操作

      更新操作无非也就两种,整体更新和局部更新,使用场合相信大家也清楚。

    <1> 整体更新

         不知道大家可还记得,我在上一篇使用update的时候,其实那种update是属于整体更新。

  

   

  <2> 局部更新

        有时候我们仅仅需要更新一个字段,而不是整体更新,那么我们该如何做呢?easy的问题,mongodb中已经给我们提供了两个

   修改器: $inc 和 $set。

   ①  $inc修改器

       $inc也就是increase的缩写,学过sql server 的同学应该很熟悉,比如我们做一个在线用户状态记录,每次修改会在原有的基础上

    自增$inc指定的值,如果“文档”中没有此key,则会创建key,下面的例子一看就懂。

 

 ② $set修改器

      啥也不说了,直接上代码 

 

 <3> upsert操作

     这个可是mongodb创造出来的“词”,大家还记得update方法的第一次参数是“查询条件”吗?,那么这个upsert操作就是说:如果我

没有查到,我就在数据库里面新增一条,其实这样也有好处,就是避免了我在数据库里面判断是update还是add操作,使用起来很简单

将update的第三个参数设为true即可。

  

 <4> 批量更新

     在mongodb中如果匹配多条,默认的情况下只更新第一条,那么如果我们有需求必须批量更新,那么在mongodb中实现也是很简单

的,在update的第四个参数中设为true即可。例子就不举了。

 

四: Remove操作

      这个操作在上一篇简单的说过,这里就不赘述了。

 

分享到:
评论

相关推荐

    数据结构算法

    索引操作 8天学通MongoDB——第三天 细说高级操作 8天学通MongoDB——第二天 细说增删查改 8天学通MongoDB——第一天 基础入门 UML系列(4)团队沟通利器之UML——类图 团队沟通利器之UML—— 序列图 团队沟通利器之...

    MongoDB增删查改

    本文将详细介绍MongoDB中的增删查改(CRUD)操作。 一、Insert操作 MongoDB的数据存储基于文档(Document),文档遵循BSON(Binary JSON)格式,与JSON相似但支持更多数据类型。插入操作主要分为单条插入和批量...

    Java操作Mongodb数据库实现数据的增删查改功能示例

    Java 操作 Mongodb 数据库实现数据的增删查改功能示例 本篇文章主要介绍了 Java 操作 Mongodb 数据库实现数据的增删查改功能,通过完整的实例形式分析了 Java 针对 MongoDB 数据库的连接、增删查改等相关操作技巧。...

    express+ajax+MongoDB做的一个增删查改小demo

    在项目中,你将学习如何使用MongoDB的驱动程序(如Mongoose)连接到数据库,定义模型,执行增删查改操作,以及如何在数据库操作完成后向客户端返回结果。 具体操作步骤如下: 1. **创建**:用户通过表单提交数据,...

    博客后台系统,nodejs express mongodb主要就是数据的增删查改,做为练手使用.zip

    标题中的“博客后台系统,nodejs express mongodb主要就是数据的增删查改”指的是一个基于Node.js、Express框架和MongoDB数据库构建的博客管理后台。这个项目主要用于实践和学习,帮助开发者掌握基本的Web开发技能。...

    MongoDB增删查改.zip

    在这个“MongoDB增删查改.zip”压缩包中,我们很可能会找到关于如何在MongoDB中执行基本操作如添加(Insert)、删除(Delete)、查询(Query)和修改(Update)数据的教程或示例。 一、MongoDB的基本概念 1. ...

    nodejs+express+mongodb 博客系统增删改查完整版

    这是一个基于Node.js、Express框架和MongoDB数据库构建的博客系统的完整实现。这个系统涵盖了用户管理、博客内容管理和权限控制的基本功能,是学习Web开发和深入理解Node.js后端开发的一个优秀实践案例。以下是对该...

    JQueryEasyUI的增删查改

    "JQueryEasyUI的增删查改"是Web应用中最基本的功能,通常指的是创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作,也就是常说的CRUD操作。这些功能对于任何数据管理型的应用来说都是必不可少的。 ...

    留言墙微信小程序,初学云开发实现数据库增删查改功能

    【标题】:“留言墙微信小程序,初学云开发实现数据库增删查改功能”这个项目是为初学者设计的一个实践教程,旨在通过构建一个实际的微信小程序应用来教授云开发和数据库管理的基础知识。微信小程序是一种轻量级的...

    MongoDB中对文档的增删查改基本操作方法总结

    MongoDB 中对文档的增删查改基本操作方法总结 MongoDB 是一种 NoSQL 数据库,提供了多种操作文档的方法,包括插入、删除、查询和修改。本文将对 MongoDB 中对文档的增删查改基本操作方法进行总结。 插入文档: 在...

    从MySQL到MongoDB——视觉中国的NoSQL之路.pdf

    "从MySQL到MongoDB——视觉中国的NoSQL之路" MySQL中的挑战 在传统的基于静态内容的产品中,MySQL使用Master+Master的部署方案,前端使用自己的PHP框架进行开发,Memcached作为缓存,Nginx进行Web服务器和负载...

    golang使用json格式实现增删查改的实现示例

    在Golang中,使用JSON格式实现增删查改是一种轻量级的数据持久化方式,尤其适合小型项目或不需要复杂数据库管理的场景。本文将详细探讨如何利用Golang的JSON库来处理这些操作。 首先,JSON(JavaScript Object ...

    mongodb 简单的数据库操作,增删改查

    一个简单的mogodb的操作封装,mongodb 简单的数据库操作,增删改查

    mongodb数据库实验之增删查改

    mongodb 数据库实验 一:增加数据 操作1:单条插入:Yelp数据库中的User数据集插入符和如下要求的数据 _id:自定义为自己的班级; user_id:自己的学号+任意字符(多于22个字符取前22位,不足22个字符补充字母,数字...

    mongodb的小例子,增删改查,分页

    在"mongodb的小例子,增删改查,分页"这个主题中,我们将深入探讨MongoDB的基本操作,包括数据的插入(增)、查询(查)、更新(改)以及删除(删),同时还会涉及到数据分页这一重要的数据检索技术。 1. 数据插入...

Global site tag (gtag.js) - Google Analytics