博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【MongoDB】update修改器($set、$unset、$inc、$push、$pull、$pop)
阅读量:3867 次
发布时间:2019-05-23

本文共 1264 字,大约阅读时间需要 4 分钟。

0.练习数据

先插入练习数据

db.stu.insert([{
"name" : "郭靖", "hometown" : "蒙古", "age" : 20, "gender" : true },{
"name" : "黄蓉", "hometown" : "桃花岛", "age" : 18, "gender" : false },{
"name" : "华筝", "hometown" : "蒙古", "age" : 18, "gender" : false },{
"name" : "黄药师", "hometown" : "桃花岛", "age" : 40, "gender" : true },{
"name" : "段誉", "hometown" : "大理", "age" : 16, "gender" : true },{
"name" : "段王爷", "hometown" : "大理", "age" : 45, "gender" : true },{
"name" : "洪七公", "hometown" : "桃花岛", "age" : 50, "gender" : true }])

1.$set

局部修改,不存在则新增该字段

db.stu.update({
hometown:"蒙古"},{
$set:{
age:18,height:170}})db.stu.update({
hometown:"蒙古"},{
$set:{
age:10}})# 注意: update()命令默认只更新第一个文档,如果想批量修改,可以增加{multi:true}

在这里插入图片描述

2.$unset

删除字段,指定key,值是多少都不影响。好像并非真的删除,只是把它置为null

db.stu.update({
hometown:"蒙古"},{
$unset:{
height:170}})

在这里插入图片描述

3.$inc

$inc可以实现变量的自增自减,即支持负数,字段不存在则新增

db.stu.update({
hometown:"蒙古"},{
$inc:{
age:2}}) # age字段自增2

在这里插入图片描述

4.$push

$push是在数组的末尾追加一个元素

db.stu.update({
hometown:"蒙古"},{
$set:{
list:[1,2,3,4,5]}}) # 新增一个列表db.stu.update({
hometown:"蒙古"},{
$push:{
list:6}}) # 追加元素

在这里插入图片描述

5.$pull

$push是删除数组的一个元素,如果有多个相同元素,会全都被删除

db.stu.update({
hometown:"蒙古"},{
$pull:{
list:6}})

在这里插入图片描述

6.$pop

$pop也是删除元素,不过它删除的是最后一个或第一个元素,值只能选1或-1

在这里插入图片描述

转载地址:http://wsrmn.baihongyu.com/

你可能感兴趣的文章
WebKit之InlineBox绘制阶段顺序
查看>>
WebKit之图像显示分析流程
查看>>
WebKit之addToJavaScriptWindowObject()分析
查看>>
资源之收集列表整理
查看>>
JS之kindeditor的用法简介
查看>>
Linux之最简字符驱动的编码模型
查看>>
服务之Windows平台上搭建SVN服务
查看>>
Python之封装diff命令的项目比较命令(格式化diff输出结果)
查看>>
Shell之定时拉起脚本
查看>>
Shell之导出数据库的表为Excel的脚本
查看>>
Shell之预启动脚本
查看>>
WebKit之Node的继承关系图
查看>>
WebKit之RenderObject继承关系图整理
查看>>
WebKit之JSCell的继承关系图
查看>>
WebKit之HTMLTreeBuilder类的解析框架
查看>>
WebKit之HTMLConstructionSite类组成
查看>>
Linux之so加载原理分析
查看>>
C之基于signal信号的交互式的测试功能模块(触发时机)
查看>>
Linux之libevent的编译&测试
查看>>
Linux之kc.cfg文件参数详解
查看>>