【发布时间】:2017-08-15 14:32:29
【问题描述】:
我想将一些数据从 postgres 移动到 BigQuery。
为此,我可以查询 postgres 表以获取架构,然后映射数据类型。
lookup = {
'char': 'STRING',
'character': 'STRING',
'varchar': 'STRING',
'character varying': 'STRING',
'text': 'STRING'}
我的问题是,我可以这样做,以便我可以提供一个列表(或对应于 STRING 的值的元组。
类似,在非常伪代码级别:
lookup = {
lambda x: if x in ['char', 'character' ... ] : 'STRING' else if x in ['int'] : 'INTEGER' else None
}
这将返回数据类型
lookup['char']
> STRING
【问题讨论】:
-
我想知道:为什么?我只看到结果更难阅读。但是有几个选项
lookup = {...}; for key in [...]:; lookup[key] = 'STRING';或lookup.update({key: 'STIRNG' for key in [...]})例如。 -
您为什么要这样做?似乎第一个解决方案是有效的?
-
只是为了让解决方案更简洁。
标签: python postgresql python-3.x google-bigquery