Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.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
在一个输出中合并多个JSON_Json_Mongodb_Etl_Talend - Fatal编程技术网

在一个输出中合并多个JSON

在一个输出中合并多个JSON,json,mongodb,etl,talend,Json,Mongodb,Etl,Talend,我正在从事一个BI项目,需要将两个JSON合并到一个输出中,以插入MongoDB 作业屏幕: 第一个JSON是这样的: { "idCommand": 1 "name": "Maurice" } { "products": [ { "name": "Banana" }, { "name": "Orange" }, ] } 第二个JSON是这样的: { "idCom

我正在从事一个BI项目,需要将两个JSON合并到一个输出中,以插入MongoDB

作业屏幕:

第一个JSON是这样的:

{
   "idCommand": 1
   "name": "Maurice"
}
{
   "products": [

       {
          "name": "Banana"
       },
       {
          "name": "Orange"
       },
    ]
}
第二个JSON是这样的:

{
   "idCommand": 1
   "name": "Maurice"
}
{
   "products": [

       {
          "name": "Banana"
       },
       {
          "name": "Orange"
       },
    ]
}
我们想要的最终JSON:

{
   "idCommand": 1
   "name": "Maurice",
   "products": [

       {
          "name": "Banana"
       },
       {
          "name": "Orange"
       },
    ]
}

根据注释创建:


“包含关联的产品”-没有可见的关联。就我所理解的这个结果而言,可以将记录串联起来是非常简单的。但是如果这只是两个表,您应该考虑在Oracle中对表进行
join
ing,
select
result并编写JSON字段。应该容易得多。同样,这取决于表是否可连接。

这是无连接,这是一个简单的连接。您确定第一个和第二个源中始终有一条可连接的记录吗?我将首先对这两个字段进行concat,然后使用
tWriteJSONField
。唯一的问题是会有一个外部循环和一个内部循环(首先对所有第一个JSON执行此操作,然后是第一个JSON#2…),而不是据我所知的1:1循环。是的,我确定,在我的oracle数据库中有两个表:commands和commands#product。commands包含command的标题,commands\u product包含与命令关联的产品。我只想用嵌套数组创建一个json。“包含关联的产品”-没有可见的关联。就我所理解的这个结果而言,可以将记录串联起来是非常简单的。但是如果这只是两个表,您应该考虑在Oracle中对表进行
join
ing,
select
result并编写JSON字段。应该容易得多。同样,这取决于这些桌子是否可以连接。非常感谢,这很有效!我使用内部连接。MongoDB还有一个问题,当我用“tWriteJSONField”格式化JSON并用tMongoDBOutput发送它时,结果是:{“\u id”:“…”,“output”:“{“idCommand”:1,…”}而不是:{“\u id”:“…”,“idCommand”:1,…”,我根据注释创建了一个答案。如果它对你有所帮助,请考虑接受它。对于MongoDB问题,请创建另一个问题,然后我们可以进行研究。