- 浏览: 1067939 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (639)
- 服务器配置篇 (58)
- hibernate篇 (14)
- spring篇 (33)
- struts篇 (28)
- JS篇 (46)
- 其他技术篇 (46)
- 数据库集群配置 (6)
- JAVA基础相关 (48)
- 分布式框架HadHoop的应用 (2)
- FLEX篇 (8)
- SQLSERVER技术 (32)
- Android学习 (13)
- amchart学习笔记 (1)
- openfire+smark搭建即时通讯 (9)
- Linux学习 (18)
- Oracle数据库 (15)
- 网站优化技术 (12)
- mysql数据库 (2)
- 项目学习总结 (18)
- 工具类(JAVA) (12)
- 工具类(JS) (2)
- 设计模式 (10)
- Lucene学习 (24)
- EJB3学习 (6)
- Sphinx搜索引擎 (3)
- 工作中用到的软件小工具 (5)
- .NET (49)
- JAVA 连接SQLSERVER2008步骤 (1)
- MongoDB (19)
- Android手机开发 (3)
- Maven (6)
- vue (9)
- Shiro (4)
- mybatis (3)
- netty框架 (1)
- SpringCloud (3)
- spring-cloud (7)
- Git (1)
- dubbo (2)
- springboot (13)
- rocketmq (1)
- git学习 (2)
- kafka服务器 (2)
- linux (10)
- WEB系统辅助项目 (1)
- jenkins (2)
- docker (4)
- influxdb (3)
- python (2)
- nginx (1)
最新评论
-
jiangfuofu555:
这样数据量大,效率怎么样?
sqlserver 实现分页的前台代码 以及后台的sqlserver语句 -
w156445045:
博主请问下,如何做到实时的刷新呢,
另外我后台是Java 谢谢 ...
web 版本的汽车仪表盘,非常好看。还有各种图形 -
jackyin5918:
<transportConnector name=&qu ...
ActiveMQ的activemq.xml详细配置讲解 -
握着橄榄枝的人:
你这个不是spring1.x的吧
spring1.x使用AOP实例 -
xiaophai:
全乱套了!
openfire+spark搭建完美的及时通讯
现在这节就主要讨论插入,更新和删除文档。
插入:MongoDB学习笔记(一)中有讲 这里就简单复习一下
首先声明MongoDB中保存的是BSON (不是JSON)
db.collection_name.insert()
例
--------------------------------------------------------------------------------------
> data = { name:'hurry',title:'software developer',skills:['java','js']}
{
"name" : "hurry",
"title" : "software developer",
"skills" : [
"java",
"js"
]
}
> db.members.insert(data);
> db.members.findOne();
{
"_id" : ObjectId("4e11a4f6c25a7683c014d968"),
"name" : "hurry",
"title" : "software developer",
"skills" : [
"java",
"js"
]
}
--------------------------------------------------------------------------------------
insert和save方法的区别
insert 不校验数据是否存在,直接插入,如果重复的话,报错.
save 插入重复数据,则改用update
例
---------------------------------------------------------------------------------------
> db.members.insert
function (obj, _allow_dot) {
if (!obj) {
throw "no object passed to insert!";
}
if (!_allow_dot) {
this._validateForStorage(obj);
}
if (typeof obj._id == "undefined") {
var tmp = obj;
obj = {_id:new ObjectId};
for (var key in tmp) {
obj[key] = tmp[key];
}
}
this._mongo.insert(this._fullName, obj);
this._lastID = obj._id;
}
> db.members.save
function (obj) {
if (obj == null || typeof obj == "undefined") {
throw "can't save a null";
}
if (typeof obj._id == "undefined") {
obj._id = new ObjectId;
return this.insert(obj);
} else {
return this.update({_id:obj._id}, obj, true);
}
}
---------------------------------------------------------------------------------------
删除:MongoDB学习笔记(一)中有讲 这里就简单复习一下
remove 方法 删除文档 function (t, justOne)
参数1 条件 参数2 删除一个?boolean
如果要删除所有数据 有一个简单的方法 可以直接删除相应的集合 db.collection_name.drop() 这样的速度会更快
更新:
这里主要讲一下更新方法 MongoDB学习笔记(一)中有讲过最简单的更新 这里就不提了
使用修改器
$inc 增加值 (可以增加负数)只用于数字类型
-------------------------------------------------------------------------------------
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "name" : "hurry", "title" : "software developer", "skills" : [ "java", "js" ], "age" : 25 }
> db.members.update({'name':'hurry'},{'$inc':{'age':1}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "name" : "hurry", "title" : "software developer", "skills" : [ "java", "js" ],"age" : 26 }
-------------------------------------------------------------------------------------
$set 如果该键不存在,则增加它(使用$unset删除不想要的键)
例
-------------------------------------------------------------------------------------
> db.members.update({'name':'hurry'},{'$set':{'age':22}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "name" : "hurry", "title" : "software developer", "skills" : [ "java", "js" ], "age" : 22}
-------------------------------------------------------------------------------------
数组修改器 $push $pop
例
-------------------------------------------------------------------------------------
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "age" : 22, "name" : "hurry", "skills" : [ "java", "js" ], "title" : "software developer" }
> db.members.update({'name':'hurry'},{'$push':{'skills':'python'}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "age" : 22, "name" : "hurry", "skills" : [ "java", "js", "python" ], "title" : "software developer" }
> db.members.update({'name':'hurry'},{'$pop':{'skills':1}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "age" : 22, "name" : "hurry", "skills" : [ "java", "js" ], "title" : "software developer" }
-------------------------------------------------------------------------------------
$addToSet 避免重复插入
例
-------------------------------------------------------------------------------------
> db.members.update({'name':'hurry'},{'$addToSet':{'skills':'python'}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "age" : 22, "name" : "hurry", "skills" : [ "java", "js", "python" ], "title" : "software developer" }
-------------------------------------------------------------------------------------
$each一次添加多个
例
--------------------------------------------------------------------------------------
> db.members.update({'name':'hurry'},{'$addToSet':{'skills':{$each:['python','mongoDB','PL/SQL']}}})
> db.members.find()
{ "_id" : ObjectId("4e11b35ec25a7683c014d96a"), "age" : 22, "name" : "hurry", "skills" : [ "java", "js", "python", "PL/SQL", "mongoDB" ], "title" : "software developer" }
----------------------------------------------------------------------------------------
更新多个文档(熟悉update方法的用法) 参见MongoDB学习笔记(一)中的参考资料
发表评论
-
mongodb添加删除节点
2018-06-14 15:05 403replica set多服务器主从,添加,删除节点,肯定会经常 ... -
Win10 64位+mongodb集群搭建
2018-06-14 14:17 552项目中想用mongodb,于是抽时间了解了下,以此片博客作 ... -
MongoDB 备份(mongodump)与恢复(mongorestore)
2018-05-15 17:37 443MongoDB数据备份 在Mongodb中我们使用mong ... -
MongoDB 3.0查询
2015-05-14 16:28 841Find or Query Data with Java D ... -
MongoDB——第五天 主从复制
2015-05-13 15:07 644从这一篇开始我们主要讨论mongodb的部署技术。 ... -
MongoDB——第四天 索引操作
2015-05-13 15:06 607这些天项目改版,时间比较紧,博客也就没跟得上,还望大家见谅 ... -
MongoDB——第三天 细说高级操作
2015-05-13 15:05 781今天跟大家分享一下m ... -
MongoDB——第二天 细说增删查改
2015-05-13 14:58 619看过上一篇,相信大家 ... -
MongoDB——第一天 基础入门
2015-05-13 14:52 738关于mongodb的好处,优点之类的这里就不说了,唯一要讲 ... -
MongoDB学习笔记三一C#操作数据库
2011-10-13 14:56 2143目标:向数据库插入两条Notes,一个包含标签一个没有,然后通 ... -
MongoDB简介、API、案例
2011-10-13 14:52 14481、 简介 * MongoDB是一个基于分布式文件存储的数据 ... -
MongoDB学习笔记(一) MongoDB介绍及安装
2011-10-13 14:50 1587一、前言 最近开 ... -
JAVA 操作MONGOD 实例(已经封装好方法了)
2011-10-12 16:04 0<p><span style="f ... -
JAVA 操作MONGOD
2011-10-12 15:20 1132不爱说话爱技术,以下是我整理的关于对mongodb进行增删改 ... -
Mongod 管理篇
2011-10-12 15:07 2020下面将在这一年的一些简单的管理操作做一下记录 S ... -
Mongodb在亿万级数据量上的性能测试报告
2011-10-12 14:48 1645进行了一下Mongodb亿级数据量的性能测试,分别测试如下几个 ... -
mongodb 客户端工具
2011-09-30 13:54 2026<script type="text/ja ... -
mongodb 安装详细介绍(我已经安装成功)
2011-09-30 08:59 1515一,安装mongoDB 1,解压 ... -
mongoDB 入门指南、示例
2011-09-30 08:41 962一、准备工作 1、 下载mongoDB 下载地址:htt ...
相关推荐
mongodb学习笔记资料,从安装到操作库collection 对document的crud 索引 replicaSet sharding 备份与恢复
自己在学习MongoDB的一些笔记,里面有各个查询选择器的使用截图,还有一些索引的介绍。
MongoDB 学习笔记 本文档是 MongoDB 学习笔记,涵盖了 NoSQL、Cache、运行平台等多个方面的知识点。 一、NoSQL 数据库 MongoDB MongoDB 是一个强大、灵活、可扩展性好的文档数据存储器,可以完成大部分关系数据库...
本篇学习笔记将从基础操作到高级功能,详细阐述MongoDB的关键知识点。 首先,MongoDB的基本单元是集合(collection),类似于关系型数据库中的表,而集合中的元素称为文档(document),文档是键值对的集合,类似于...
mongodb学习笔记 MongoDB 是一个基于分布式文件存储的开源数据库系统,主要用于处理大量数据的存储和查询。以下是 MongoDB 的一些基本操作和技巧: 插入文档 MongoDB 中可以使用 `insert` 方法来插入文档,例如 ...
首先,`mongodb_and_python`学习笔记可能涵盖了如何使用Python编程语言与MongoDB进行交互。Python是常见的MongoDB驱动程序之一,通过PyMongo库,开发者可以方便地执行CRUD(创建、读取、更新、删除)操作,构建复杂...
总结的MongoDB的学习笔记,基本上包括了MongoDB的方方面面,每个知识点,都有示例代码,有需要的朋友,可以下载下来进一步补充完善。
MongoDB 是一种流行的开源、非关系型数据库系统,以其灵活性、高性能和易用性而备受开发者青睐。在本文中,我们将深入探讨 ...在实际项目中,学习和掌握 MongoDB 及其驱动程序能够帮助你更好地应对现代数据存储需求。
本压缩包“mongoDB学习笔记及工具.zip”包含了一些资源,帮助你深入理解和掌握MongoDB的相关知识。 1. **笔记(note.txt)**: 这个文件可能是对MongoDB的基础概念、安装过程、基本操作和进阶特性的详细记录。笔记...
MongoDB是一种流行的NoSQL数据库,它的索引机制与传统的关系型数据库类似,旨在提升查询和排序的速度。在MongoDB中,索引对于优化查询性能至关重要,尤其在处理大量数据时。下面将详细介绍MongoDB中不同类型的索引...
### MongoDB 学习笔记知识点详解 #### 一、MongoDB 命令行基础操作 **1.1 帮助命令** - **help**:显示 MongoDB shell 的基本帮助信息。 - **db.help()**:提供当前数据库的帮助信息。 - **db.mycoll.help()**:...
MongoDB的GridFS是一个强大的文件存储系统,专为在数据库中存储和检索大量小文件而设计。GridFS将文件拆分为多个数据块(chunk),每个块都有自己的文档存储在`fs.chunks`集合中,而文件元信息则保存在`fs.files`集合...
以下是对MongoDB学习的一些关键知识点的详细解释: 1. **MongoDB的基本概念**:MongoDB以集合(Collections)的形式存储数据,集合相当于关系型数据库中的表。集合内包含文档(Documents),文档是JSON格式的数据...
MongoDB最详细学习笔记