如何使用Python将一列从一个集合复制到mongoDB中的另一个集合?
答案 0 :(得分:0)
文档:{
_id: Object_ID
username: "john"
email: "john@email.com"
age: 24
}
现在,您想为此将用户名列从某些collection1
的文档复制到collection2
的文档中,
假设您与MongoDB建立了连接,我们使用db
对象进行进一步的数据处理。
我们需要获取具有列名的预期列数据
data = db.collection1.find_one(
{"email": "john@email.com"},
{"username": 1}
)
//现在data
是一个Python字典,其中包含键username
上的用户名值
现在我们将在另一个集合中创建一个新文档(或者,如果您愿意,我们可以根据某些条件更新该数据)
db.users.collection2.insert_one(data)
//因此,我们将包含该数据的新文档存储在collection2中
现在,我在这里使用find_one
来精确地收集单个数据,但是如果您需要收集数据列表,则只需遍历该列表,然后将这些数据插入到集合中即可。
答案 1 :(得分:0)
您可以将forEach与find一起使用以获取所需的所有文档,然后保存到新记录。 以同一文档为例
{
username: "john",
email: "john@email.com",
age: 24
}
您可以尝试
db.collection_name.find({ username:"john" },{ _id: 0, username: 1 }).forEach((res) => { db.new_collection_name.insert(res); })