gpt4 book ai didi

mongodb - 将字符串转换为objectid mongodb

转载 作者:行者123 更新时间:2023-12-03 02:52:20 24 4
gpt4 key购买 nike

我有一个包含 800 个左右文档的集合,我想通过添加一个基于另一个字段的新字段来从此集合中创建一个新文档,如下所示:

基本上,我的 foo_collection 文档包含一个已设置为字符串的字段,但我想通过将其值“转换”为 Mongoose ID 将其转换为新字段:

到目前为止我已尝试过此操作,但收到错误:无效的 onjectId:长度

db.getCollection('foo_collection').aggregate([
{
"$addFields ":{
"bar" : ObjectId("$bar_id")
}
},
{"$out":"new_foo_collection"}
])

预期结果是一个包含文档的新集合,其中还有 1 个字段“bar”,其值为 ObjectId()

感谢您的帮助!

最佳答案

Mongodb 4.0 已推出 $toObjectId聚合将字符串值转换为 ObjectId...所以你可以使用这个

db.getCollection('foo_collection').aggregate([
{ "$addFields": {
"bar" : { "$toObjectId": "$bar_id" }
}},
{ "$out": "new_foo_collection" }
])

关于mongodb - 将字符串转换为objectid mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51352786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com