一、插入文档
 1、db.集合名.insert()
  插入一个:db.user.insert({name:"Join",age:13,address:"beijing",isDelete:0})
  插入多个:db.user.insert([{name:"Join",age:13,address:"beijing",isDelete:0},{name:"Join2",age:13,address:"beijing",isDelete:0},{name:"Join3",age:13,address:"beijing",isDelete:0}])
 2、db.集合名.save()
  指定_id则为修改更新:db.user.save({_id:ObjectId("234567892345678"),name:"Join",age:13,address:"beijing",isDelete:0})
  不指定_id则和insert是一样的,为新增:db.user.save({name:"Join4",age:13,address:"beijing",isDelete:0})
二、文档更新
 1、更新已经存在的文档:db.集合名.update()
  db.集合名.update(<query>,<update>,{upset:<boolean>,multi:<boolean>,writeConcern:<document>})
  query:查询条件
  update操作符:$set----立即更新;$inc----在原有的基础上累积增加后更新
  multi:可选项,默认为false,如果为true则只更新第一条
  writeConcert:可选项,抛出异常的级别
  eg:db.user.update({name:"Join"},{$set:{age:21}})
 2、通过传入文档替换已有的文档,db.集合名.save()
  db.集合名.save(文档数据,{writeConcern:<document>})
三、文档删除
  db.集合名.remove()
  db.集合名.remove(<query>,{justOne:<boolean>,writeConcern:<document>})
四、文档查询
  1、查询集合中所有的文档:db.集合名.find()
  2、查询符合要求的文档:db.集合名.find(<query>,{<key>:1,<key>:2...}),query为判断查询的要求,key为查询出显示的哪些内容1为显示
    eg:db.user.find({age:21},{age:1,name:1})
  3、以格式化的方式显示:pretty()
    eg:db.user.find().pretty()
  4、查询后显示符合结果的第一条内容:findOne()
  5、查询条件 操作符
    

内容 符合 表达式
大于 $gt db.集合名.({<key>:{$gt:<value>}})
大于等于 $gte db.集合名.({<key>:{$gte:<value>}})
小于 $lt db.集合名.({<key>:{$lt:<value>}})
小于等于 $lte db.集合名.({<key>:{$lte:<value>}})
等于 : db.集合名.({<key>:<value>})
不等于 $ne db.集合名.({<key>:{$ne:<value>}})
使用_id查询 _id db.集合名.({"_id":ObjectId("id值")})
符合结果的数量 count db.集合名.({<key>:<value>}).count()
查询结果中某个字段是否包含某个值 /包含的值/ db.集合名.({name:/io/})
查询结果中某个字段是否以某值开头 /^包含的值/ db.集合名.({name:/^J/})
  6、条件查询 and 、or
    and:db.集合名.find({<key>:<value>,<key2>:<value2>,<key3>:<value3>})
    or  :db.集合名.find({$or:[{<key>:<value>},{<key2>:<value2>}]})
  7、limit、skip  
    limit():读取指定数量的数据内容
      eg:db.集合名.find().limit(5)   读取前5条数据
    skip():跳过指定数量的数据内容
      eg:db.集合名.find().skip(5)   跳过前5条数据
  8、排序sort
    db.集合名.find().sort({key:1})
    1为升序排列,-1为降序排列 
 

MongoDB中文档操作(二)的更多相关文章

  1. MongoDB (八) MongoDB 文档操作

    一. MongoDB 插入文档 insert() 方法 要插入数据到 MongoDB 集合,需要使用 MongoDB 的  insert() 或 save() 方法. 语法 insert() 命令的基 ...

  2. mongoDB 文档操作_删

    mongoDB 文档删除 MySQL对比 mysql delete from table where ... mongo db.collection.deleteOne(query) 删除函数 del ...

  3. mongoDB文档操作

    数据库操作无非就是增.删.改.查.这篇主要介绍增.删.改. 1.增 Mongodb插入操作很简单,使用关键字“insert”.实例: > db.test.blog.insert({"h ...

  4. mongoDB 文档操作_查

    基本查询命令 find 查找复合条件的所有文档 命令 db.collection.find(query,field) 参数 query 查找条件 格式: {ssss:"xxx"}是 ...

  5. mongoDB 文档操作_改

    mongoDB 更改操作 格式对比 MySQL update table set .... where .... db.collection.updateOne(query,update,upsert ...

  6. MongoDB自学------(3)MongoDB文档操作

    一.插入文档 二.查询文档 三.更新文档 可以看到标题(title)由原来的 "Mongodb" 更新为了 "MongoDBtest". 以上语句只会修改第一条 ...

  7. mongoDB文档操作【增删改】

    MongoDB 插入文档 文档的数据结构和JSON基本一样. 所有存储在集合中的数据都是BSON格式. BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON. 插入文档 Mo ...

  8. mongodb的常用操作(二)

    继续mongodb的学习: 9.mongodb条件查询 假设有user集合,里面结构如下:{ "_id" : ObjectId("52ab35d281181f853264 ...

  9. mongoDB 文档操作_增

    增加 / 插入 /保存 单文档插入 命令 db.collection.insertOne(doc) 功能 向被 use 的数据库中插入数据 实例 db.class.insertOne({"n ...

随机推荐

  1. myBatis源码之Executor、BaseExecutor和CachingExecutor

    接下来是mybatis的执行过程,mybatis提供了一个接口Executor,Executor接口主要提供了update.query方法及事物相关的方法接口 /** * @author Clinto ...

  2. [Zabbix3.0] 添加MySQL监控

    zabbix3.0 server已经自带MySQL的模板了,只要修改agent端,然在web端给主机添加模板就好了. Agent端操作 /etc/zabbix/zabbix_agentd.d/user ...

  3. WebStorm常用快捷键总结

    在使用WebStorm的过程中,常用快捷键整理: 1.  必备快捷键 Ctrl+/:注释当前行 Ctrl+Shift+/:当前位置插入注释 Ctrl+Alt+/:块注释,并Focus到首行,写注释说明 ...

  4. solr研磨之游标分页

    普通分页 当需要深度分页的时候,比如查询第10000页数据,每页显示10条,意味着需要提取前10000 x 10 页的数据,并将这100000条数据缓存在内存中,然后在内存中进行排序.最后返回最后10 ...

  5. iOS开发常用第三方库

    UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...

  6. index() checkbox单选问题

    index() 只对兄弟节点有用 如果这种结构要选择checkbox 时用prop附加属性 removeAttr清楚属性 $('.checkbox').prop('checked',true) $(' ...

  7. 《C++标准程序库》学习笔记(一)C++相关特性

    抱着本厚厚的<C++标准库>读了几天,想想也该写点关于用法的总结,一来怕今后容易忘记,二来将书上的事例重新敲一遍,巩固对程序库相关知识的了解.今天开第一篇,以后不固定更新.当然,笔者所读为 ...

  8. Jedis连接池对Redis数据操作

    [效果图] [前言] Redis是常用于缓存的非关系型数据库,感觉更像加强型的HashMap的用法,依靠Key和Value保存数据.官方推荐用Jedis来操作Redis数据库,使用和JDBC差不多,一 ...

  9. C++堆栈问题

    编写C++中的两个类 一个只能在栈中分配空间 一个只能在堆中分配. 解答: (1)代码如下 (2)堆栈分配内存的介绍 一.一个经过编译的C/C++的程序占用的内存分成以下几个部分:1.栈区(stack ...

  10. Mybatis 系列8

    上篇系列7 介绍了insert.update.delete的用法, 本篇将介绍select.resultMap的用法. select无疑是我们最常用,也是最复杂的,mybatis通过resultMap ...