Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mongoDB中将2个字段合并到数组中_Mongodb - Fatal编程技术网

如何在mongoDB中将2个字段合并到数组中

如何在mongoDB中将2个字段合并到数组中,mongodb,Mongodb,我需要将几个字段折叠成一个数组,我有一个Talend作业的文档,它的文档结构类似于下面的 您可以看到“位置”文档中有多个“部门”文档,如果存在部门记录(1个或更多),我需要将它们填充到数组中 { _id: "1010101010101010", COUNTRY_ID: "1", COUNTRY_NAME: "US", location: [ { location_id: "99", location_name: "Washington", dep

我需要将几个字段折叠成一个数组,我有一个Talend作业的文档,它的文档结构类似于下面的

您可以看到“位置”文档中有多个“部门”文档,如果存在部门记录(1个或更多),我需要将它们填充到数组中

{
_id: "1010101010101010",
COUNTRY_ID: "1",
COUNTRY_NAME: "US",
location: [
    {
       location_id: "99",
       location_name: "Washington",
       department: 
          {
             department_id: "100",
             department_name: "Finance"
          },
      department: 
          { 
             department_id: "101",
             department_name: "Sales"
          }
     }
  ]
}
我需要它成为:

   {
_id: "1010101010101010",
COUNTRY_ID: "1",
COUNTRY_NAME: "US",
location: [
    {
       location_id: "99",
       location_name: "Washington",
       department: 
          [ 
            {
               department_id: "100",
               department_name: "Finance"
            },
            { 
               department_id: "101",
               department_name: "Sales"
            }
         ]
     }
  ]
}

看起来我想要的是$unwind操作的反面,但我对mongoDB不太熟悉。感谢您的帮助。

在您提交给部门的第一份文件中,和。。没有字段名的东西?现在好了吗?我相信你给了我们无效的json。。。为什么不填充真实对象?.@smackenzie所以有两个同名字段?现在没有多大改善,我会更新,但可能需要在电脑前,而不是在内存中进行更新,我道歉。