1.插入操作

user = {"username":"lcq","sex":"man"}
db.user.insert(user)

2.更新

var lcq = db.user.findOne({"username":"lcq"}}
lcq.address = {"province":"shandong","location":"zoupin"}
lcq.haha = "hehhehe"
db.user.update({"username":"lcq"},lcq) > db.user.update({"username":"lcq"},{$set:{"test":"test"}})
> db.user.findOne({"username":"lcq"})
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"haha" : "afdfdfd",
"sex" : "man",
"test" : "test",
"username" : "lcq"
}
> db.user.update({"username":"lcq"},{$unset:{"test":1}})

$unset删除某个字段

> lcq = db.user.findOne({"username":"lcq"})
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}
>
>
> lcq.count = 1
> db.user.update({"username":"lcq"},lcq) > db.user.update({"username":"lcq"},{$inc:{"count":2}})

$inc设置某个字段自增

> db.user.update({"username":"lcq"},{$set:{"friends":['zhangsan']}})

> db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
} > db.user.update({"username":"lcq"},{$push:{"friends":'lisi'}})
>
> db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan",
"lisi"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}

$push向数组中加入新的值

> db.user.update({"username":"lcq"},{$addToSet:{"friends":'lisi'}})
>
> db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan",
"lisi"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
} > db.user.update({"username":"lcq"},{$addToSet:{"friends":'xiaoming'}})
>
>
> db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan",
"lisi",
"xiaoming"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}
>

可见使用$addToSet加入时,假设存在同样的值则不加入。

> db.user.update({"friends":"lisi"},{$set:{"friends.$":"join"}})
>
>
>
> db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan",
"join",
"xiaoming"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}

使用$符进行数组的定位,实现更新数组特定位置的值。

> lcq = db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 3,
"friends" : [
"zhangsan",
"join",
"xiaoming"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}
>
>
> lcq.count = 10
10
> > db.user.save(lcq)
> > db.user.findOne()
{
"_id" : ObjectId("55024de2849b70a4f670f413"),
"address" : {
"province" : "shandong",
"location" : "zoupin"
},
"count" : 10,
"friends" : [
"zhangsan",
"join",
"xiaoming"
],
"haha" : "afdfdfd",
"sex" : "man",
"username" : "lcq"
}

save方法在不存在时创建。存在时更新。

更加方便。

3.删除

> db.user.insert({"username":"zhangsan"})
> db.user.remove({"username":"zhangsan"})

mongodb创建、更新、删除的更多相关文章

  1. MongoDB创建\更新\删除文档操作

     一.插入\创建文档 --当插入一个不存在的文档时,会自己主动创建一个文档 [root@racdb ~]# mongo MongoDB shell version: 2.4.14 connecti ...

  2. 《mongoDB》基本操作-创建/更新/删除文档

    一:基本操作 - db; 当前选择的集合(等于数据库名) > db demo -  use db_name; 选择你要操作的集合 > use demo switched to db dem ...

  3. MongoDB(二)创建更新删除文档

    插入并保存文档操作 用insert向目标集合插入文档,如果没有_id键则会自动添加.最后自动保存. >db.foo.insert({"bar":"baz" ...

  4. 2.MongoDB系列之创建更新删除文档

    1. 插入文档 // 单条插入 db.getCollection('blog').insertOne({'type': 'mongodb'}) // 批量 插入 db.getCollection('b ...

  5. mongodb 创建更新语法

    创建文档 向MongoDB插入数据,使用insert, 如:db.refactor.insert({"refactor's blog":"http://www.cnblo ...

  6. MongoDb 创建、更新以及删除文档常用命令

    mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理.关于它的一个最简洁描述为:scalable, high-performance, o ...

  7. TODO:MongoDB的查询更新删除总结

    TODO:MongoDB的查询更新删除总结 常用查询,条件操作符查询,< .<=.>.>=.!= 对应 MongoDB的查询操作符是$lt.$lte.$gt.$gte.$ne ...

  8. MongoDB创建集合和删除集合05-14学习笔记

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

  9. MongoDB创建数据库和删除数据库05-14学习笔记

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

  10. Mongodb中 数据库和集合的创建与删除

    1.查询数据库,查询表: show dbs //查询所有的数据库show collections //查询所有的集合(表) 2.创建数据库或切换到数据库(存在就切换,不存在就创建) use spide ...

随机推荐

  1. [置顶] 如何把你的笔记本电脑变成一个Wi-Fi路由器在Windows 7 & 8?

    翻译自:http://www.hakanakdag.net/windows/how-to-create-wireless-ad-hoc-internet-connection-in-windows-8 ...

  2. 在IE浏览器中iframe跨域访问cookie/session丢失的解决办法

    单点登录需要在需要进入的子系统B中添加一个类,用于接收A系统传过来的参数: @Action(value = "outerLogin", results = { @Result(na ...

  3. Linux基本命令(开发常用的、电脑常用的)

    一.开发常用的 ###转自:http://www.weixuehao.com/archives/25#usergroup 转自:http://blog.csdn.net/ljianhui/articl ...

  4. OpenStack core components CLI快速调用API

    1,openStack core components CLI 使用自身参数执行;

  5. 【UVA】1449-Dominating Patterns(AC自己主动机)

    AC自己主动机的模板题.须要注意的是,对于每一个字符串,须要利用map将它映射到一个结点上,这样才干按顺序输出结果. 14360841 1449 option=com_onlinejudge& ...

  6. 添加“返回顶部”小图标按钮的JS(JavaScript)代码详解

    如何给自己的网站添加方便快捷的"返回顶部"小图标按钮呢?如下图: JS源代码: /** * JavaScript脚本实现回到页面顶部示例 * @param acceleration ...

  7. Spring学习之Ioc控制反转(2)

    开始之前: 1. 本博文为原创,转载请注明出处 2. 作者非计算机科班出身,如有错误,请多指正 ---------------------------------------------------- ...

  8. [Tree]Binary Tree Inorder Traversal

    Total Accepted: 98729 Total Submissions: 261539 Difficulty: Medium Given a binary tree, return the i ...

  9. JAVA 8 新特性和改进

    Java 8的所有新特性及改进包括(JEP全称为JDK Enhancement Proposal,JDK改进建议): 语言改进: JEP 126:Lambda表达式 & 虚拟扩展方法 JEP ...

  10. Scala基础入门-代码碎片

    import scala.util.control._ import java.util.Date object Test { def main(args: Array[String]) { // v ...