Postgres复制到选择*与类型转换

时间:2018-02-05 14:29:30

标签: sql postgresql

我在postgres中有一组两个SQL表。临时表和主表。在登台表的各种原因中,我上传的数据对于所有日期列都具有不规则和不同的格式。在上载过程中,这些值作为varchars进入临时表,以便操作为可用格式。

在主表中,日期字段的列类型在登台表中的类型为“date”,它们的类型为varchar。

问题是,postgres是否支持类似于

的复制表达式
insert into production_t select *,textdate::date from staging_t

我需要在复制过程中更改单个字段的格式。我知道我可以在插入过程中单独输出所有列名称,并在那里对日期列进行类型转换,但是这个表有200多个列,是10个具有类似问题的表之一。我想在一行中完成这个insert + typecast,我可以应用于所有表,而不必键入2000多行sql查询。

1 个答案:

答案 0 :(得分:1)

你必须编写这样一个查询的每一列,没有简写。

我可以说200列的设计值得怀疑。