在MongoDB 3.4中将字符串转换为objectId

时间:2020-04-30 01:17:46

标签: mongodb mongodb-query

我需要在mongoDB中将字符串转换为objectId,在mongodb 4中可以通过$toObjectId": "$bar_id

实现

但是问题是我的mongodb版本是3.4 有什么方法可以在3.4版中实现? 升级不是一种选择,因为它已在生产环境中使用

用例是我需要从一个集合到另一个集合进行查找,该集合看起来像

收藏F:

{ 
    "_id" : ObjectId("a"), 
    "field" : "some-field", 
    "cityId" : "cityId", 
    "regionId" : "regionId", 
    "countryId" : "countryId", 
}

和收集国家/地区的样子(区域和城市相似)

{ 
    "_id" : ObjectId("countryId"), 
    "name": "someName"
}

我尝试使用查询:

db.F.aggregate([
   {
     $lookup:
       {
         from: "country",
         localField: "countryId",
         foreignField: "_id",
         as: "country"
       }
  }
])

但结果如下:

{ 
    "_id" : ObjectId("a"), 
    "field" : "some-field", 
    "cityId" : "cityId", 
    "regionId" : "regionId", 
    "countryId" : "countryId", 
    "country" : [

    ]
}

有什么建议吗?

谢谢

0 个答案:

没有答案