MongoDB 学习手册 - CURD
mongoDB 增加数据
// mongoDB 增加数据:
//新增数据insert( 字典 ) 表示插入一条数据,insert([字典]) 表示插入多条数据
// db.text01.insert([
// {'name':"小智",'sex':'男',"ID":""},
// {'name':"小梁",'sex':'女',"ID":""},
// {'name':"小龟",'sex':'男',"ID":""}]) //插入一条数据
// db.text01.insertOne()
//插入多条数据(数据为列表集)
// db.text01.insertMany([
// {'name':"anec3",'sex':'男',"ID":""},
// {'name':"小美",'sex':'女',"ID":""},
// {'name':"小华",'sex':'男',"ID":""}]) //第二种增加数据的方式: save()
// var do2 = [{'name':"小前",'sex':'男',"ID":""},{'name':"小成",'sex':'女',"ID":""}]
// db.text01.save(do2)
mongoDB 修改数据:
// mongoDB 修改数据:
// 语法格式:
// db.collection.update(
// <query>, //update的查询条件,类似sql update查询内where后面的。
// <update>, //update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的.
// {
// upsert: <boolean>, //可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
// multi: <boolean>, //可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
// writeConcern: <document> //可选,抛出异常的级别
// }
// ) // 更新name = '小成' ID = '' 的一条记录:
// db.text01.update({"name":'小成'},{$set:{"ID":""}}); // 更新全部 name以'小'开头的数据ID=000000000000.
// db.text01.update({"name":/^小/},{$set:{"ID":""}},false,true); // 为没有count的字段 添加一个count=50字段,
// db.a1.update(
// {"count":{$exists : false}},
// {"$set":{"count" : 50}},
// false,
// true
// )
mongoDB 删除数据
// mongoDB 删除数据:(emove()方法)
// 语法结构:
// db.collection.remove(
// <query>, //删除的文档的条件。
// {
// justOne: <boolean>, //(可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
// writeConcern: <document> //(可选)抛出异常的级别。
// }
// ) // 删除匹配的记录
// db.text01.remove({'name':"小成"}) // 删除一条匹配的记录
// db.text01.remove({'sex':"女"},true) // 删除所有记录
// b.text01.remove({}) // remove() 方法 并不会真正释放空间。
// 需要继续执行 db.repairDatabase() 来回收磁盘空间。
// db.repairDatabase() // 官方建议使用:
// db.text01.deleteOne({'name':'anec'})
// db.text01.deleteMany()
mangoDB 查询语法
// ------------------------------------------------------------ // mangoDB 查询语法:
// db.collection.find(
// query, //可选,使用查询操作符指定查询条件
// projection //可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。
// ) //显示指定字段(id 要加下划线)
// db.a1.find({},{_id:0,name:1,sex:1}).pretty() //排除不显示的字段
// db.a1.find({},{ID:0,count:0} ) // 以格式化的方式来显示所有文档
// db.a1.find().pretty() //返回一个找到到的数据
// db.a1.findOne() // *************************** // 比较符:
// 查找到name = a2 的数据:
// db.a1.find({'name':'a2'}) // 查找到count 小于 40 的数据
// db.a1.find({"count":{$lt:40}}).pretty() // 查找到count 大于 60 的数据
// db.a1.find({"count":{$gt:60}}).pretty() // 查找到count 小于等于 35 的数据
// db.a1.find({"count":{$lte:35}}).pretty() // 查找到count 大于等于 64 的数据
// db.a1.find({"count":{$gte:64}}).pretty() // 查找cont 大于50小于80
// db.a1.find({'count':{$gt:50,$lt:80}}) // 查找到count 不等于 64 的数据
// db.a1.find({"count":{$ne:64}}).pretty() // *************************** // MongoDB AND 条件(多个条件查询)
// 查询语法:
// db.col.find({key1:value1, key2:value2}).pretty() // db.a1.find({'sex':'女','count':{$gt:50}}) // OR 条件
// db.a1.find({$or:[{'name':'a1'},{'name':"a2"}]}) // ***************************
// 查询指定数据内的数据
// db.a1.find({字段名:{'$in':[字段值1,字段值2,字段值3']}})
// db.a1.find({'name':{'$in':['a1','a2','a3']}})
// 查询不在指定数据内的数据
// db.a1.find({字段名:{'$nin':[字段值1,字段值2,字段值3']}})
// db.a1.find({'name':{'$nin':['a1','a2','a3']}})
// ***************************
// not
// db.a1.find({字段名:{'$not':[运算符表达式]}})
// db.a1.find({'count':{$not: {$lte:74}}})
//nor = not or
// db.a1.find({字段名:{'$nor':[运算符表达式]}})
// db.a1.find({$nor:[{'sex':'男'},{'count':{$lte:20}}]})
//***************************
// $exists 取出没有的字段
// db.a1.find({'count':{$exists:0}})
//***************************
// $type 对用类型的数据 2:字符串
// db.a1.find({'name':{$type:2}})
// ***************************
//显示前两条数据
// db.a1.find().limit(2) //跳过前两条显示两条数据
// db.a1.find().limit(2).skip(2) //升序排序
// db.a1.find({},{_id:1,name:1}).sort({name:1}) //降序排序
// db.a1.find({},{_id:1,name:1}).sort({name:-1}) //skip(), limilt(), sort()三个放在一起执行的时候,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit()。 // ***************************
查找到操作:
find_one_and_delete() //查找后删除 find_one_and_replace() //查找后替换 find_one_and_update() //查找后更新 create_index() //在集合上创建索引 create_indexes() //在集合上创建一个或多个索引 drop_index() //删除此集合上的索引
MongoDB 学习手册 - CURD的更多相关文章
- Django学习手册 - CURD组件
CURD CURD是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是CURD.作用是用于处理数据的基本原子操作. 它代表创建(Create).更新(Update).读取(Retriev ...
- MongoDB 学习手册 - 安装(windwos 环境)
- MongoDB学习(1)--安装,基本curd操作
知识点: 1-MongoDB 安装,启动和卸载 2-基本概念 3-基本的增删改查操作(CURD) 来回顾总结一把学习的mongodb,如果有javascript基础,学习"芒果DB" ...
- MongoDB学习笔记(2):数据库操作及CURD初步
MongoDB学习笔记(2):数据库操作及CURD 数据库操作 创建数据库 首先MongoDB中数据库的创建和数据库的切换都是使用命令,USE DATABASE,如果要切换的数据库不存在则会进行创建, ...
- MongoDB学习笔记系列
回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...
- SQLite学习手册(目录)
链接地址:http://www.cnblogs.com/stephen-liu74/archive/2012/01/22/2328757.html 在实际的应用中,SQLite作为目前最为流行的开源嵌 ...
- 一站式SpringBoot for NoSQL Study Tutorial 开发教程学习手册
SpringBoot2.0 + NoSQL使用教程,项目名称:“SpringBoot2NoSQL” 项目地址: https://gitee.com/475660/SpringBoot2NoSQL 项目 ...
- MongoDB学习笔记系列~目录
MongoDB学习笔记~环境搭建 (2015-03-30 10:34) MongoDB学习笔记~MongoDBRepository仓储的实现 (2015-04-08 12:00) MongoDB学习笔 ...
- SQLite学习手册(转)
原文网址:http://www.cnblogs.com/stephen-liu74/archive/2012/01/22/2328757.html 在实际的应用中,SQLite作为目前最为流行的开源嵌 ...
随机推荐
- ES6(promise)_解决回调嵌套简单应用
一.前言 这个小案例是在node平台上应用的所以需要保证你的电脑: 1.安装和配置node.js环境 2.需要用node.js来开启一个http-server: 开启方法:https://blog.c ...
- 推荐几个Mac插件帮你提升工作效率
下面这篇文章是小编看到的很好的文章,分享给大家,小编前几天也整理了很多mac专题文章.更多专题,可关注[磨人的小妖精],查看我的文章,也可上[风云社区 SCOEE],查找和下载相关软件资源. (一)综 ...
- angular 中如果表单有相同的name一般会出现如下错误
Unhandled Promise rejection Cannot assign to a reference or variable
- mysql同步复制异常的常见操作-传统复制方式
mysql同步复制异常的常见操作-传统复制方式 一.传统复制方式是基于非gtid的,常见的错误有1032和1062 1032是主键冲突,1062是从库中没有找到对应的记录. 可以查看出现错误的binl ...
- jsp+servlet+jdbc实现表单提交
1.新建一个maven工程,选webapp模板 2.安装tomcat https://tomcat.apache.org/download-80.cgi 下载解压到自定义目录上 ps:在全局变量加上J ...
- IMDB影评倾向分类 - N-Gram
catalogue . 数据集 . 模型设计 . 训练 1. 数据集 0x1: IMDB影评数据 本数据库含有来自IMDB的25,000条影评,被标记为正面/负面两种评价 from keras.dat ...
- NGUI使用图集的精灵换图片
创建了一个sprite,选择的是某一个图集下的sprite,现在我想点击它来换图片.前提是你的sprite已经加了UIButton 代码如下: public void OnClick() { if ( ...
- java io系列26之 RandomAccessFile
本文主要介绍 RandomAccessFile. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_26.html 更多内容请参考:java io系列0 ...
- C++回顾day02---<引用>---待补充
一:引用概念---引用就是为一个变量起一个别名 每个变量都是指向一块内存空间的标识,引用就是重新设置一个标识,但是这个标识还是指向同一个内存空间 和指针类似(其实引用本质就是使用了一个常指针 cons ...
- synchronized和volatile的区别
但是volatile不适合做计数器使用,即使他具有可见性,但是它不具有原子性.不能保证数据的一致性. 但是volatile适合哪种场景呢? 比较适合做一些标示.比如说两个线程,线程B必须得等线程A执行 ...