iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >mongodb如何更新数据
  • 572
分享到

mongodb如何更新数据

2024-04-02 19:04:59 572人浏览 八月长安
摘要

mongoDB中更新数据的方法:在monGodb中可以使用update()和save()方法来更新集合中的文档数据,update()语法例如“db.col.update( { "count" : { $gt : 1 }

mongoDB中更新数据的方法:在monGodb中可以使用update()和save()方法来更新集合中的文档数据,update()语法例如“db.col.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );”,只更新第一条记录。

mongodb如何更新数据

具体内容如下:

update() 方法

update() 方法用于更新已存在的文档。语法格式如下:

db.collection.update(

   <query>,

   <update>,

   {

     upsert: <boolean>,

     multi: <boolean>,

     writeConcern: <document>

   }

)

参数说明:

  • query : update的查询条件,类似sql update查询内where后面的。

  • update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的

  • upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。

  • multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。

  • writeConcern :可选,抛出异常的级别。

实例

我们在集合 col 中插入如下数据:

>db.col.insert({

    title: 'MongoDB 教程', 

    description: 'MongoDB 是一个 NoSQL 数据库',

    by: '编程网',

    url: 'Http://www.yisu.com',

    tags: ['mongodb', 'database', 'NoSQL'],

    likes: 100

})

接着我们通过 update() 方法来更新标题(title):

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })   # 输出信息

> db.col.find().pretty()

{

        "_id" : ObjectId("56064f89ade2f21f36b03136"),

        "title" : "MongoDB",

        "description" : "MongoDB 是一个 Nosql 数据库",

        "by" : "编程网",

        "url" : "http://www.yisu.com",

        "tags" : [

                "mongodb",

                "database",

                "NoSQL"

        ],

        "likes" : 100

}

>

可以看到标题(title)由原来的 "MongoDB 教程" 更新为了 "MongoDB"。

以上语句只会修改第一条发现的文档,如果你要修改多条相同的文档,则需要设置 multi 参数为 true。

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})

save() 方法

save() 方法通过传入的文档来替换已有文档,_id 主键存在就更新,不存在就插入。语法格式如下:

db.collection.save(

   <document>,

   {

     writeConcern: <document>

   }

)

参数说明:

  • document : 文档数据。

  • writeConcern :可选,抛出异常的级别。

实例

以下实例中我们替换了 _id 为 56064f89ade2f21f36b03136 的文档数据:

>db.col.save({

    "_id" : ObjectId("56064f89ade2f21f36b03136"),

    "title" : "MongoDB",

    "description" : "MongoDB 是一个 Nosql 数据库",

    "by" : "Yisu",

    "url" : "http://www.yisu.com",

    "tags" : [

            "mongodb",

            "NoSQL"

    ],

    "likes" : 110

})

替换成功后,我们可以通过 find() 命令来查看替换后的数据

>db.col.find().pretty()

{

        "_id" : ObjectId("56064f89ade2f21f36b03136"),

        "title" : "MongoDB",

        "description" : "MongoDB 是一个 Nosql 数据库",

        "by" : "Yisu",

        "url" : "http://www.yisu.com",

        "tags" : [

                "mongodb",

                "NoSQL"

        ],

        "likes" : 110

}

>

更多实例

只更新第一条记录:

db.col.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );

全部更新:

db.col.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true );

只添加第一条:

db.col.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );

全部添加进去:

db.col.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true );

全部更新:

db.col.update( { "count" : { $gt : 15 } } , { $inc : { "count" : 1} },false,true );

只更新第一条记录:

db.col.update( { "count" : { $gt : 10 } } , { $inc : { "count" : 1} },false,false );

--结束END--

本文标题: mongodb如何更新数据

本文链接: https://www.lsjlt.com/news/109091.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mongodb如何更新数据
    mongodb中更新数据的方法:在mongodb中可以使用update()和save()方法来更新集合中的文档数据,update()语法例如“db.col.update( { "count" : { $gt : 1 } ...
    99+
    2024-04-02
  • mongodb如何批量更新数据
    在MongoDB中,可以使用updateMany方法来批量更新数据。该方法接受两个参数,第一个参数是查询条件,用来匹配需要更新的文档...
    99+
    2024-05-11
    mongodb
  • mongodb如何更新一条数据
    在MongoDB中,可以使用update()方法来更新一条数据。更新数据时,需要指定更新条件和更新内容。 以下是更新一条数据的基本语...
    99+
    2024-04-09
    mongodb
  • mongodb如何更新表中所有数据
    要更新MongoDB表中的所有数据,可以使用updateMany()方法来更新所有文档。以下是一个示例,它将更新名为"student...
    99+
    2023-08-24
    mongodb
  • MongoDB如何更新多级文档的数据
    目录嵌套数组更新更新下级文档的属性属性增加和移除总结嵌套数组更新 以下面的数据(数据集名称为author)为例: {name: '岛上码农', documents: ['Flu...
    99+
    2024-04-02
  • mongodb如何新增数据
    mongodb新增数据的方法有三种,其中db.collection.insert()方法添加一个新文档到集合中,而db.collection.update()方法和db.collection.save()方法则是通过upsert操作来添加新...
    99+
    2024-04-02
  • mongodb怎么批量更新数据
    MongoDB提供了updateMany()方法来实现批量更新数据。 updateMany()方法的语法如下: db.collect...
    99+
    2023-10-26
    mongodb
  • mongodb批量更新数据怎么实现
    在 MongoDB 中,可以使用 updateMany() 方法来批量更新数据。下面是一个示例: 假设有一个名为 users 的集合...
    99+
    2024-04-09
    mongodb
  • mongodb如何获取最新的数据
    在MongoDB中可以使用以下方法获取最新的数据:1. 使用find()方法查询所有数据,并按照时间戳(或其他排序字段)降序排序,然...
    99+
    2023-10-19
    mongodb
  • mongodb如何更新某个字段
    要更新MongoDB中某个字段的值,您可以使用update()方法。下面是一个例子,演示如何更新一个文档中的特定字段: 假设我们有一...
    99+
    2024-04-09
    mongodb
  • 如何更新 MongoDB 文档的 _id?
    您无法更新它,但可以保存新 ID 并删除旧 ID。请按照一些步骤更新 MongoDB 的 _id。步骤如下:第1步:第一步,需要将ObjectId存储到变量中。anyVariableName=db.yourCollectionName.fi...
    99+
    2023-10-22
  • PostgreSQL中如何更新数据
    要更新PostgreSQL数据库中的数据,可以使用UPDATE语句。以下是一个示例: UPDATE table_name SET c...
    99+
    2024-04-09
    PostgreSQL
  • SQLite中如何更新数据
    要在SQLite中更新数据,可以使用UPDATE语句。以下是一个示例: UPDATE table_name SET column1 ...
    99+
    2024-04-09
    SQLite
  • mongodb批量更新数据慢怎么解决
    在 MongoDB 中进行批量更新数据时可能会遇到性能问题,以下是一些解决方法: 使用批量更新操作符:MongoDB 提供了批量...
    99+
    2024-04-09
    mongodb
  • 如何更新数据库中的数据
    要更新数据库中的数据,通常可以使用SQL语句中的UPDATE命令。下面是一个示例: UPDATE table_name SET co...
    99+
    2024-03-05
    数据库
  • mongodb如何获取最新的数据库
    在MongoDB中,可以使用以下方法获取最新的数据库:1. 使用`show dbs`命令来列出所有的数据库。这将显示所有已创建的数据...
    99+
    2023-09-04
    mongodb 数据库
  • oracle视图数据如何更新
    在Oracle中,视图是基于表的查询结果的虚拟表。视图本身不存储数据,而是从基表中检索数据。因此,无法直接对视图进行数据更新。但是,...
    99+
    2023-08-08
    oracle
  • numpy如何实时更新数据?
    NumPy是Python中用于科学计算的一个重要的库。它提供了许多用于处理大型数组和矩阵的函数和方法。在数据分析和机器学习领域中,NumPy是一个必须掌握的工具。在本文中,我们将学习如何在NumPy中实时更新数据。 NumPy中提供了一些函...
    99+
    2023-10-11
    path numpy 实时
  • 如何更新MySQL中的数据
    要更新MySQL中的数据,可以使用UPDATE语句。以下是一个示例: UPDATE table_name SET column1 =...
    99+
    2024-04-09
    MySQL
  • oracle如何批量更新数据
    在Oracle中,可以使用UPDATE语句来批量更新数据。以下是一个示例: UPDATE your_table SET co...
    99+
    2024-04-22
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作