mongodb 更新update

1.$inc

用法:{$inc:{field:value}}

作用:对一个数字字段的某个field增加value

> db.test1.update({‘name‘:‘wang‘},{$inc:{age:1}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "name" : "wang", "age" : 20, "sex" : "M" }

2.$set

用法:{$set:{field:value}}

作用:把文档中某个字段field的值设为value

> db.test1.update({‘name‘:‘wang‘},{$set:{‘sex‘:‘F‘}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "name" : "wang", "age" : 20, "sex" : "F" }

3.$unset

用法:{$unset:{field:1}}

作用:删除某个字段field

> db.test1.update({‘name‘:‘wang‘},{$unset:{‘sex‘:1}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang" }

4.$push

用法:{$push:{field:value}}

作用:把value追加到field里。注:field只能是数组类型,如果field不存在,会自动插入一个数组类型

> db.test1.update({‘name‘:‘wang‘},{$push:{‘sex‘:‘F‘}})

> db.test1.update({‘name‘:‘wang‘},{$push:{‘sex‘:‘M‘}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "F",  "M" ] }

5.pushAll

用法:{$pushAll:{field:value_array}}

作用:用法同$push一样,只是$pushAll可以一次追加多个值到一个数组字段内。

> db.test1.update({‘name‘:‘wang‘},{$pushAll:{‘sex‘:[‘M or F‘,‘M and F‘]}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "F",  "M",  "M or F",  "M and F" ] }

> db.test1.update({‘name‘:‘wang‘},{$push:{‘sex‘:[‘M or F‘,‘M and F‘]}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "F",  "M",  "M or F",  "M and F",  [  "M or F",  "M and F" ] ] }

6.$addToSet

用法:{$addToSet:{field:value}}

作用:加一个值到数组内,而且只有当这个值在数组中不存在时才增加。

> db.test1.update({‘name‘:‘wang‘},{$addToSet:{‘sex‘:[‘M or F‘,‘MF‘]}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [ "F", "M", "M or F", "M and F", [ "M or F", "M and F" ], [ "M or F", "MF" ] ] }

7.$pop

用法:删除数组内第一个值:{$pop:{field:-1}}、删除数组内最后一个值:{$pop:{field:1}}

作用:用于删除数组内的一个值

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "F",  "M",  "M or F",  "M and F" ] }

> db.test1.update({‘name‘:‘wang‘},{$pop:{‘sex‘:1}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "F",  "M",  "M or F" ] }

8.$pull

用法:{$pull:{field:_value}}

作用:从数组field内删除一个等于_value的值

> db.test1.update({‘name‘:‘wang‘},{$pull:{‘sex‘:"F"}})

> db.test1.find({‘name‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "name" : "wang", "sex" : [  "M",  "M or F" ] }

10.$rename

用法:{$rename:{old_field_name:new_field_name}}

作用:对字段进行重命名

> db.test1.update({‘name‘:‘wang‘},{$rename:{‘name‘:‘names‘}})

> db.test1.find({‘name‘:‘wang‘})

> db.test1.find({‘names‘:‘wang‘})

{ "_id" : ObjectId("58662477fb6a734e8f45133f"), "age" : 20, "names" : "wang", "sex" : [  "M",  "M or F" ] }

时间: 2024-08-15 10:06:41

mongodb 更新update的相关文章

MongoDB 更新文档

MongoDB 使用 update() 和 save() 方法来更新集合中的文档.接下来让我们详细来看下两个函数的应用及其区别. update() 方法 update() 方法用于更新已存在的文档.语法格式如下: db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } ) 参数说明: que

【Mongodb教程 第八课 】MongoDB 更新文档

MongoDB的 update() 和 save() 方法用于更新文档的集合. update()方法更新现有的文档值,而替换现有的文档通过的文件中 save() 方法. MongoDB Update() 方法 update()方法更新现有文档值. 语法: update() 方法的基本语法如下 >db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA) 例子 考虑以下数据mycol集合. { "_id" : Objec

MongoDB更新操作

MongoDB的更新操作涉及到4个参数: db.collection.update(criteria,objNew,upsert,multi) criteria:查询条件 objNew:update对象和一些更新操作符 upsert:如果不存在update的记录,是否插入objNew这个新的文档,true为插入,默认为false,不插入. multi:默认是false,只更新找到的第一条记录.如果为true,把按条件查询出来的记录全部更新. 修改字段名称 db.CollectionName.up

mongodb 更新数组出现can&#39;t append to array using string field name

数据库内容大概如下: { _id:1, "hero_list" : { "15521" : { "stars" : 0, "_id" : 15521, "equip" : [ [ ], [ ], [ ], { "item_id" : 310141, "lv" : 103, "uuid" : "4a727ee1-e7b0-4265-b004

mongodb更新数据

1. 获取当前时间: Calendar.getInstance().getTime(); 2. 更新数据: public void updateProcessLandLog(ProcessLandLog land, List<String> fields,List<Object> values) { Update update = new Update(); int size = fields.size(); for(int i = 0 ; i < size; i++){ S

几种更新(Update语句)查询的方法

正 文: 数据库更新就一种方法Update,其标准格式:Update 表名 set 字段=值 where 条件只是依据数据的来源不同,还是有所差别的:  1.从外部输入这样的比較简单例:update tb set UserName="XXXXX" where UserID="aasdd" 2.一些内部变量,函数等,比方时间等直接将函数赋值给字段update tb set LastDate=date() where UserID="aasdd" 3

MYSQL 多表更新 UPDATE SET like concat(&#39;%&#39;,abc,&#39;%&#39;);

SQL语句为:select * from table1 where `text` like CONCAT('%',(select name from table2 where id =3),'%'); UPDATE ecs_region a,nation b SET a.code = b.code where b.province like concat('%',a.region_name,'%'); UPDATE ecs_region a,nation b SET a.code = b.cod

几个更新(Update声明)查询方法

积极 文化: 上的方法,数据库更新Update.的标准格式:Update 表名 set =值 where 条件只是依据数据的来源不同,还是有所差别的:  1.从外部输入这样的比較简单例:update tb set UserName="XXXXX" where UserID="aasdd" 2.一些内部变量.函数等,比方时间等直接将函数赋值给字段update tb set LastDate=date() where UserID="aasdd" 3

MongoDB 操作手册CRUD 更新 update

修改记录 概述 MongoDB提供了update()方法用于更新记录.这个方法接受以下参数: 一个更新条件的JSON对象用于匹配记录,一个更新操作JSON对象用于声明更新操作,和一个选项JSON对象 声明查询条件,使用和查询一样的结构和语法. 默认情况下,update()更新单条记录,若要更新多条记录, 请使用multi选项. 更新记录中的指定字段 用于更新某个字段的某个值,MongoDB提供了update操作符,比如$set. 在执行更新操作时,一些操作符回创建没有的字段,如$set. 测试数