mongodb - 如何克隆(重复)同一数据库集合中的 MongoDB 对象?

标签 mongodb shell database nosql

我需要通过 dbshel​​l 复制(克隆)集合中的一个对象。有这样的东西:

> db.users.distinct( 'nickname' )
[
        "user1",
        "user2",
        "user3",
        "user4"
]
>

user1 在 users 集合中选择一个复杂对象,如何复制该对象然后更改(重命名)userX 中的 user1 字段?

最佳答案

代码

> user = db.users.findOne({'nickname': 'user1'})
> user.nickname = 'userX'
> delete user['_id']
> db.users.insert(user)

说明

您需要找到用户对象并将其放入变量中。比你需要修改你想要的属性,而不是你需要将整个对象作为新对象插入。为此,您需要删除对象已有的 _id 属性。而不仅仅是使用 insert 来创建新的。

关于mongodb - 如何克隆(重复)同一数据库集合中的 MongoDB 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9851005/

相关文章:

Node.js - 如何计算 mongodb 中子文档的聚合(总和)?

mongodb - 如何将 Rest api 与 React Native 结合使用;网络通话问题

c - 如何将shell脚本输出放入c结构变量中

不同选项卡的 Linux shell 脚本

objective-c - 在 iPhone/iPad 上存储数据

mysql - 如果我们使用 mysql 创建一个数据库,数据库将在 pc 中创建

node.js - 设置选择 : false to subdocuments array at mongoose

mongodb - 尝试从 Fantom 脚本连接到 MongoLab 中托管的 MongoDB 时身份验证失败。怎么了?

unix - 如何设置 $PATH 以便 `ssh user@host command` 起作用?

sql - Golang连接到Cubrid