php - Mongo 更新当前数据,重用数据集中的字段

标签 php mongodb mongodb-php

我的数据集在数据库中是完整的;但是我想在数据库中的每个文档上创建一个新字段。我想通过我的一些输入以及数据库中当前的其他字段来派生这个新字段:

即:

Document: 
{ 
   "_id":myId,
   "city":"fooville",
   "state":"bar"
}

然后我想遍历每个条目并添加如下内容:

Document:
{
   "_id":myId,
   "city":"fooville",
   "state":"bar",
   "cityState":"fooville, bar"
}

有没有简单的方法来做到这一点?尽量避免重新插入整个数据集。

预先感谢您的帮助

(Mongo 很棒)

最佳答案

像这样:

$results = $collection->find();

// iterate through the results
foreach ($results as $results) 
{

    $collection->update(array("_id" => new MongoId($result['_id'])), 
                        array('$set' => array("cityState" => sprintf("%s, %s", $result['city'], $result['state']))));

}

我还没有测试过....但它应该可以工作...

关于php - Mongo 更新当前数据,重用数据集中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8244215/

相关文章:

PHP+MongoDB : Uncaught exception 'MongoCursorException' with message 'No such file or directory'

php - 在 PHP 中连接到 mongodb 数据库

php - "The login is invalid "cPanel 问题

php - 如何在 php 上传时间显示加载屏幕?

php - 从 mysql 获取数组创建命名 session 数组

Node.js 或使用 mongodb 服务器

javascript - 使用 javascript 检查 URL 是否包含值

performance - 在 MongoDB 中存储日期

mongodb - `fields cannot be identical: ' ' and ' '` mongo导入错误

Mongodb查询特定月份|年份不是日期