首页 > 解决方案 > 如何使用 pandas 连接两个表并聚合第二个表中的数据并将其导出为 json

问题描述

我在数据库中有两个表,其中包含以下数据:

 Descriptions                      Translations

| DescId | Description |          | DescId | Translation | Language |      
| 1      | hello       |          | 1      | hallo       | DE       |
| 2      | apple       |          | 1      | cześć       | PL       |
                                  | 1      | bonjour     | FR       |
                                  | 2      | apfel       | DE       |
                                  | 2      | jabłko      | PL       |
                                  | 2      | pomme       | FR       |

我想实现这样的json:

[
    {
        "desc": "Hello",
        "translations": [
            {
                "tran": "Hallo",
                "lang": "DE"
            },
            {
                "tran": "Cześć",
                "lang": "PL"
            },
            {
                "tran": "Bonjour",
                "lang": "FR"
            }
        ]
    },
    {
        "desc": "Apple",
        "translations": [
            {
                "tran": "Apfel",
                "lang": "DE"
            },
            {
                "tran": "Jabłko",
                "lang": "PL"
            },
            {
                "tran": "Pomme",
                "lang": "FR"
            }
        ]
    }
]

我正在考虑使用 pandas 框架 - 在 DescId 上合并两个数据帧,然后轻松将其导出到 dict/json 中。是否可以合并 DescId 上的翻译并将所有列聚合到字典列表中?

也许有更好的方法通过加入这两个表来创建嵌套的 json?

标签: pythonsqljsonpandasdictionary

解决方案


推荐阅读