[$inc]

作用:修改器$inc可以对文档的某个值为数字型(只能为满足要求的数字)的键进行增减的操作。

Example: db.b.update({"uid" : "201203"},{"$inc":{"size" : 1}})

Array: array(‘$inc=>array(“size”=>1))

[$set]

作用:用来置顶一个键并更新键,若键不存在则创建

Example: db.b.update({"uid" : "201203"},{"$set":{"size" : 1}})

Array: array(‘$set=>array(“size”=>1))

[$gt]  =====  大于

[$gte] =====  大于等于

[$lt]   =====  小于

[$lte]  =====  小于等于

[$ne]   =====  不等于

Example: db.b.find({age:{$gt:18}})   ==> age>18

Array: array(‘age’=>array(“$gt”=>18))

[$in]

作用:包含

[$nin]

作用:not in

Example:  db.b.find({age:{$in:[20,22,32,12]}})

Array:array(“age”=>array(‘$in’=>“20”,”22”,”32”,”12”))

[$not]

作用:不匹配

Example:

查询不匹配name=B*带头的记录

db.users.find({“name”:{$not:/^B.*/}})

查询age取摩不等于10的数据

Db.users.find( {age: {$not: { $mod:[10,0] } } })

[$type]

作用:根据数据类型查询

Example:

$type判断字段类型 查询所有name字段是字符类型的 db.users.find({name: {$type: 2}}); 查询所有age字段是整型的 db.users.find({age: {$type: 16}});

[$exists]

作用:判断字段是否存在

查询所有存在name字段的记录  db.users.find({name: {$exists: true}});

查询所有不存在phone字段的记录 db.users.find({phone: {$exists: false}});

[$rename]

作用:更改属性名

> db.c5.update({}, {$rename:{'arr':'post'}}); //字符串所以,必须打上引号

> db.c5.find(){ "_id" : ObjectId("51e2421ecf05e15d315aa746"), "post" : [ 5, 6, 7, 8, 9, 0 ] }

[$inc]  ====== 数字类型字段增减

db.user.update({'name':'owen'},{'$inc':{'age':1}})

  • $push和$pushAll:向数组类型末尾追加数据,字段不存在则创建;
  • $addToSet:向数组类型追加数据时避免重复;
  • $each:遍历数组;
  • $pop:从数组中删除数据,{$pop:{key:1}}从末尾删除数据,-1从头部删除;
  • $pull和$pullAll:从数组中删除指定数据,db.list.update({},{$pull:{'todo':'undo'}});
  • 数组定位修改器:数组可以通过下标定位,也可以通过’$‘定位查询匹配到的记录,db.blog.update({'comments.author':'joe'},{'$set':{'comments.$.author':'jim'}});

mongo 修改器的更多相关文章

  1. mongo 修改器 $inc/$set/$unset/$pop/$push/$pull/$addToSet

    mongo $inc 可以对集合里面的某些值是数字的增减.看代码 $set  可以进行修改,并且不存在的时候默认添加. 同时还能该变数据的类型. 还可以该变内嵌元素的值 用.调用 $unset  删除 ...

  2. mongo数据更新(修改器)

    数据更新简单的做法是删除重新插入update()函数语法 db.集合.update(更新条件,新的对象数据(更新操作符),upsert,multi)upsert如果要更新的数据不存在,则增加一条新的内 ...

  3. python 全栈开发,Day124(MongoDB初识,增删改查操作,数据类型,$关键字以及$修改器,"$"的奇妙用法,Array Object 的特殊操作,选取跳过排序,客户端操作)

    一.MongoDB初识 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介 ...

  4. CE修改器修改DNF 测试视频 阿修罗提升智力增加攻击力

    使用CE修改器来修改网络游戏,如DNF 测试视频: CE修改器:指的是Cheat Engine,字面上的意思指的是作弊引擎的意思,是一款内存修改编辑工具.通过修改游戏的内存数据来得到一些原本无法实现的 ...

  5. tp5 中 model 的修改器

    修改器可以在数据赋值的时候自动进行转换处理 class User extends Model { public function setNameAttr($value){ return strtolo ...

  6. Blender 之修改器代码分析

                           Blender的修改器(modifier)模块,默认界面右下块(Property)面板的扳手,分类(修改.生成.形变.模拟)列出所有的修改器.也可以空格键 ...

  7. mongodb的修改器

    在mongodb中通常文档只会有一部分要更新,利用原子的更新修改器,可以做到只更新文档的一部分键值,而且更新极为高效,更新修改器是种特殊的键,用来指定复杂的更新操作,比如调整.增加.或者删除键,还可以 ...

  8. 【MongoDB】4.MongoDB 原子修改器的 极速修改

    文档转自:http://blog.csdn.net/mcpang/article/details/7752736 对于文档的更新除替换外,针对某个或多个文档只需要部分更新可使用原子的更新修改器,能够高 ...

  9. MongoDB修改器的使用1

    为什么要使用修改器?     通常我们只会修改文档的一部分,这时候更新整个文档就显得很麻烦,通常是通过原子性的更新修改器来完成. 1."$set"修改器    "$set ...

随机推荐

  1. JSON.stringify 语法实例讲解+easyui data-options属性+expires【申明:来源于网络】

    JSON.stringify 语法实例讲解+easyui data-options属性+expires[申明:来源于网络] JSON.stringify 语法实例讲解:http://www.jb51. ...

  2. 外网访问VMware虚拟机

      目的: 主机上安装了VMware,VMware上安装了Linux虚拟机(我安装的是Centos7).我想让虚拟机向外提供Web服务.本文记录如何让我的主机和外网用户可以访问VM虚拟机上的Web. ...

  3. atom编辑器安装插件报错。。

    Checking for native build tools failed gyp info it worked if it ends with ok gyp info using node-gyp ...

  4. ASP.NET Core 从 gitlab-ci 环境变量读取配置

    最近在加强持续集成,遇到一个场景需要通过 gitlab-ci 环境变量(Settings -> Settings -> CI/CD -> Variables )在持续集成时向 ASP ...

  5. Cassandra数据模型

    Ⅰ.数据模型 1.1 Column 一组包含Name/Value Pair的数据叫Row,其中每一组Name/Value Pair叫Column Column是Cassandra最基本的数据结构,它是 ...

  6. flutter 自定义输入框组件

    一.组件分析 ui如下 根据UI分析我们需要提取哪些是动态的,可以通过传递参数得到不同的结果? 1.左侧icon 2.输入的文本 3.是否是密码框 4.输入框的控制器:如何时时得到输入框的值 二.快速 ...

  7. Java对象在Hibernate持久化层的状态

    -临时状态:刚用new语句创建对象,还没有被持久化,并且不处于Session缓存中.处于临时状态的java对象被称为临时对象. -持久化状态:已经被持久化,并且加入到Session的缓存中.处于持久化 ...

  8. tensorflow 基本内容

    tensorflow的结构 1.使用图(graphs)来表示计算任务 2.在被称之为会话(Session)的上下文(context)中执行图 3.使用tensor表示数据 4.通过变量(Variabl ...

  9. lucene基础

    同一个域中,即使相同的单词,如出现两次JAVA,也是不同的token,但他们对应相同的term,在term中记录这些token信息 数据库数据,与luence数据 需要搜寻(也即索引)的field,存 ...

  10. 67.web--手机端兼容性问题

    H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 <meta name="viewport" content="width=device-width,initia ...