使用不同方案和值编码在数据库之间转换数据

时间:2015-11-25 12:15:29

标签: python json data-conversion

作为我工作的一部分,我的目的是编写一个脚本,将现场数据从现有的数据库转换为外部数据库,以便进行发布,但相似但不那么详细。我想用Python实现这一点。

可以通过复制更改编码的内容来转换某些列,即原始数据库中的22122列的外部数据库中变为X。为了达到这个目的,我用JSON编写了编码,例如

{
    "2212": 2,
    "2213": 1,
    "2214": 2,
    ...
}

这会导致一些重复,因为你可以看到,但由于列表不能是JSON中的键,我没有看到更好的方法(简单而干净;确保我可以将右侧作为键但是然后而不是jsonParsedDict["2212"]我必须通过所有键1, 2, ...并在右侧找到我的原始密钥。)

它变得丑陋(在我看来)是原始数据库中多列的信息需要组合才能得到新列。现在我刚刚写了一个Python函数做了很多if检查。它有效,我将以这种方式完成这项工作,但它似乎在美学上是错误的,我想更多地了解Python在该任务中的可能性。

想象一下,例如我在原始数据库XY中有两列,然后基于X中的值,我不做任何事情(对于未在外部编码的值)数据库),直接返回一个值,或者根据Y在同一行中的值返回一个结果。现在这导致了一些if语句。我的另一个想法是在JSON文件中有堆叠条目,例如

{
    "X":
    {
        "2211": 1,
        "2212": null,
        "2213": 
        {
            "Y":
            {
                "3112": 1
                "3212": 2
            }
        }
        "2214": 
        {
            "Y":
            {
                "3112": 2
                "3212": 1
            }
        }
        "2215": 
        {
            "Y":
            {
                "3112": 1
                "3212": 2
            }
        }
    }
}

但是这种方法真的炸毁了JSON文件,重复变得更加痛苦。唉,除了代码中的if之外,我无法想到编写这些条件的任何其他方法。

这是一种可行的方法吗?还是有更好的解决方案?如果我只能在JSON文件中指定变量和关联变量(它们是决策过程的一部分),那将是很好的。我想抽象转换过程,以便它主要由这些JSON文件引导,并且Python代码非常通用。如果有比JSON更好的格式,那么建议非常受欢迎。

0 个答案:

没有答案