将包含嵌套JSON行的CSV转换为SQL表

时间:2018-12-05 04:23:42

标签: sql json postgresql

我有一个包含几百万行的CSV文件,并希望将其作为PostgreSQL表加载。作为示例,“ json_doc”列中的行之一包含:

{"id": <>,
 "base": 
    {"ateco": 
        [
            {
            "code": "<>", 
            "rootCode": "<>", 
            "description": "<>"
            }
        ], 
        "founded": "<>", 
        "legalName": "<>", 
        "legalForms": 
            [
                {
                "name": "<>", 
                "level": <>
                }, 
                {
                "name": "<>", 
                "level": <>
                }
            ]
    }, 
 "name": "<>", 
 "people": 
        {
            "items": 
                [
                    {
                    "name": "<>", 
                    "givenName": "<>", 
                    "familyName": "<>"
                    }
                ]
        },
 "country": "<>",
 "locations": {}
 }

如您所见,其中有许多嵌套字典。其中有几百万。

我想将此文件放入SQL表中,甚至在其自己的列中也包含子词典值。我怎样才能做到这一点?似乎我必须对嵌套数据使用某种名称间隔技术,因为存在一些重复的键,即“名称”。

将使用Pandas分析数据,但如果可能的话,我想直接将其输入Postgres。任何帮助表示赞赏。

结果如下:

id | base_ateco_code |等| base_ateco_legalForms_name |等等|

除非对此有任何想法-这是我老板的一个非常开放的项目-我只需要能够将此信息作为与另一个表的联接的一部分使用即可。

非常感谢。

0 个答案:

没有答案