修改文档:update

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

db.collection 里面有一些方法可以去更新文档 .. 比如现在我想在所有的文档上面添加一个 artist 字段, 它的值表示的就是专辑的艺术家 ..

这里我先在编辑器上组织一下要执行的命令 ... db.albums .. 意思就是要处理的是 albums 这个集合里的文档 .. 使用一下 updateMany 这个方法,它可以一次更新所有满足过滤条件的文档 ..

集合的更新文档的方法,一般他们的第一个参数都是一个过滤器 .. 在这里你可以设置一些条件,这样更新的方法只会去更新满足条件的文档 .. 这里我要更新所有的文档 .. 可以先用一个空白的对象 ..

第二个参考是要更新的东西 .. 也是一个对象 .. 然后是一个操作符 .. 不同的操作符有不同的作用 .. 要去设置一些东西,可以使用一个 $set .. 它的值就是要更新的内容 .. 这里我们用一个 artist 字段 .. 把它的值设置成 Beyond ..

如果文档里面没有 artist 这个字段,会自动给我们添加一个 .. 如果有的话,会把它的这个字段的值设置成 Beyond ..

再去执行一下它 .. 会返回操作的状态 .. 然后再查看一下所有的文档 .. 你会看到它们里面会多了一个 artist 字段 .. 它们的值都是这个 Beyond ..

这些文档里面,Parachutes 这张专辑的艺术家并不是 Beyond ,而是 Coldplay .. 现在我们再去更新一下 .. 再去组织一下要执行的命令 .. 可以用一下 update 这个方法 .. 或者 updateOne .. 这个方法只会更新一个文档 .. 如果过滤的结果有多个文档,它也只会去更新一个 ..

设置一下它的过滤参数 .. 这里我们用一下 title 这个字段 .. 它的值是 Parachutes .. 意思就是,找到 title 字段的值是 Parachutes 的所有的文档 ..

使用 $set 这个操作符 .. 把 artist 这个字段的值 .. 设置成 Coldplay ..

再去执行一下它 ... 在返回的操作状态这里, matchedCount 的值是 1,表示这次更新找到了一个结果 .. modifiedCount 表示的是被更新的文档的数量 .. 这里也是 1 ..

再查看一下 albums 这个集合里的文档 .. 之前标题是 Parachutes 的这个文档, 它的 artist 字段的值,就变成了 Coldplay ..

修改文档:update《 MongoDB 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点