目录
一、更新操作
1.更新操作符
2.updateMany和updateOne示例
3.update示例(废弃)
4.save() 方法
二、开发常见更新场景
Mongdb查询 - 常见场景查询语句示例_@来杯咖啡的博客-CSDN博客-更新语句
三、删除文档
四、删除集合
一、更新操作
1.更新操作符
updateOne/updateMany 方法要求更新条件部分必须具有以下之一,否则将报错:
• $set 给符合条件的文档新增一个字段,有该字段则修改其值
• $unset 给符合条件的文档,删除一个字段
• $push: 增加一个对象到数组底部
• $pop:从数组底部删除一个对象
• $pull:如果匹配指定的值,从数组中删除相应的对象
• $pullAll:如果匹配任意的值,从数据中删除相应的对象
• $addToSet:如果不存在则增加一个值到数组
更新操作符
$set 更新或新增字段
$unset删除字段
$rename 重命名字段
$inc 加减字段值
$mul 相乘字段值
$min 采用最小值
$max 次用最大值
2.updateMany和updateOne示例
1、单条插入数据, 插入两条:
db.userInfo.insert([
{ name:"zhansan",
tag:["90","Programmer","PhotoGrapher"]
},
{ name:"lisi",
tag:["90","Accountant","PhotoGrapher"]
}]);
2、将tag 中有90 的文档,增加一个字段: flag: 1:
db.userInfo.updateMany(
{tag:"90"},
{$set:{flag:1}}
);
3、只修改一个则用:
db.userInfo.updateOne(
{tag:"90"},
{$set:{flag:2}}
);
4、基于上面这两条数据,可以来查询一下数组中的元素
userInfo 中,会计和程序员的文档:
db.userInfo.find(
{$or:
[
{tag:"Accountant"},
{tag:"Programmer"}
]
});
5、userInfo 中,90后的文档:
db.userInfo.find({tag:"90"});
3.update示例(废弃)
我们在集合 col 中插入如下数据:
db.col.insert({
title: 'MongoDB 教程',
description: 'MongoDB 是一个 Nosql 数据库',
by: '菜鸟,
url: 'http:
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
4.save() 方法
二、开发常见更新场景
三、删除文档
db.collection.remove(<query>,<options>)
默认情况下,会删除所有满足条件的文档, 可以设定参数 { justOne:true},只会删除满足添加的第一条文档。
四、删除集合
db.collection.drop( { writeConcern:<doc>})
定义了本次删除集合操作的安全写级别
这个指令不但删除集合内的所有文档,且删除集合的索引。
db.collection.remove 只会删除所有的文档,直接使用remve删除所有文档效率比较低,可以使用 drop 删除集合,才重新创建集合以及索引。