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. cf466C Number of Ways

    C. Number of Ways time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  2. OSChina技术导向:Java图表框架JFreeChart

    JFreeChart主要用来各种各样的图表,这些图表包括:饼图.柱状图(普通柱状图以及堆栈柱状图).线图.区域图.分布图.混合图.甘特图以及一些仪表盘等等.             JavaDoc文档 ...

  3. HDOJ 4417 - Super Mario 线段树or树状数组离线处理..

    题意: 同上 题解: 抓着这题作死的搞~~是因为今天练习赛的一道题.SPOJ KQUERY.直到我用最后一种树状数组通过了HDOJ这题后..交SPOJ的才没超时..看排名...时间能排到11名了..有 ...

  4. 格而知之1:UIButton中imageView和titleLabel的位置调整

    在使用UIButton时,有时候需要调整按钮内部的imageView和titleLabel的位置和尺寸.在默认情况下,按钮内部的imageView和titleLabel的显示效果是图片在左文字在右,然 ...

  5. NSDictionary所有API的学习。

    <欢迎大家增加iOS开发学习交流群:QQ529560119> @property (readonly)NSUInteger count; //1.利用指定的key寻找相应的value - ...

  6. JavaScript 【 IE中的XML DOM 】

    IE中的 XML DOM 在统一的正式规范出来以前,浏览器对于XML的解决方案各不相同.DOM2级提出了动态创建XML DOM规范,DOM3进一步增强了XML DOM.所以,在不同的浏览器实现XML的 ...

  7. JS 利用CNZZ进行站长统计

    利用CNZZ对网站进行站长统计 前端页面只需要在body中添加如下代码即可: <script type="text/javascript">var cnzz_proto ...

  8. 3D转换

    CSS3 允许您使用 3D 转换来对元素进行格式化. 在本章中,您将学到其中的一些 3D 转换方法: 1. rotateX() 2. rotateY() <!DOCTYPE HTML>&l ...

  9. asp.net 2.0 Session丢失问题

    可行的解决方法(本人已用): 1.Web.config文件修改sessionstate模式(默认为InProc) <sessionState mode="/> 2.开启ASP.N ...

  10. maven简单工具命令

    (一)聚合项目的创建//创建父项目mvn archetype:create -DgroupId=com.ztesoft.resmaster -DartifactId=lifecycle<pack ...