php - 如何在替换整个文档的同时更新 mongodb 文档?

标签 php mongodb

如果我有一个包含两个值的文档:

{
  "name" : "Bob",
  "location" "France"
}

然后将一个数组传递给包含“name”、“country”的文档。如何确保整个文档得到更新,并删除“位置”?

我不会意识到这两个文档之间的差异,因此我无法取消设置特定字段。我正在寻找一种方法来简单地用提供的数组替换文档数据。

最佳答案

如果您向 update 提供包含所需记录的新文档,您将替换该文档。

例如:

db.so.insert({"name":"Bob", "location": "France"})
db.so.update({"name":"Bob", "location": "France"}, {"name":"Roberto", "country":"Italy"})
db.so.find()

{ "_id" : ObjectId(), "name" : "Roberto", "country" : "Italy" }

当然,如果您有文档的 _id,这将是指定更新的更好方法(而不是像上面那样传回您刚刚插入的文档)

关于php - 如何在替换整个文档的同时更新 mongodb 文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11836814/

相关文章:

php - mysql_real_escape_string($value) 不起作用

php - preg_match 显示包含一个字符串和另外两个字符串之一的行

php - 在 'onexit' 或 'onsubmit 之后,查询 mysql 并填充表单字段,而不离开页面 php js

asp.net-mvc - Asp.Net MVC 6 身份 3 MongoDB 外部登录 (Facebook)

node.js - Mongoose 查找回调未执行

mongodb:如何过滤掉今天创建的记录?

php - sql 查询在我的网页中不起作用

PHP XML如何输出漂亮的格式

javascript - 如何在 join sails js 中添加另一个字段

Mongodb SaaS 单数据库与多数据库