用于为多个源创建SQL导入脚本的模式

时间:2015-07-11 16:18:00

标签: python design-patterns mapping

我有一个具有固定字段集的数据库,我们可以调用它们

field_1, field_2, field_3

我还有多个不同的数据源,这些数据源是包含这些字段的超集的文本文件。例如,源可能包含以下字段

field_10, field_3, field_1, field_2, field_12

我现在正在寻找一种在Python中创建这种映射(通过手工)的通用方法。从抽象的意义上讲,这将是例如

Position 1 -> None
Position 2 -> field_3
Position 3 -> field_1
Position 4 -> field_2
Position 5 -> None

然后,我可以生成一个SQL COPY语句。 我确信我可以一起破解这个,但我更喜欢我可以为每个来源配置的解决方案。我不需要一个完整的解决方案,非常感谢指出正确的模式或想法。

1 个答案:

答案 0 :(得分:0)

db = ["field_1" , "field_2" , "field_3"]
file = ["field_10", "field_3", "field_1" , "field_2", "field_12"]
map = [ field_i if  field_i in db else None for field_i in file ]

时间复杂度:O(n ^ 2)