如何将 CSV 复制到缺少列的表中?

Posted

技术标签:

【中文标题】如何将 CSV 复制到缺少列的表中?【英文标题】:How to copy CSV into table with missing column? 【发布时间】:2020-11-09 10:52:05 【问题描述】:

我想将 csv 文件中的数据导入 redshift。 CSV 格式:

col1 , col2 , col3 , col4
 -   ,  -   ,  -   ,  -
 -   ,  -   ,  -   ,  -

这是我的导入命令:

COPY myTable
FROM 'file.csv'
CSV 
DELIMITER AS ','
IGNOREHEADER AS 1
;

我遇到的问题是,有时我的文件只有 col1、col2 和 col3。是否可以执行 COPY 并为缺失值添加 null

【问题讨论】:

【参考方案1】:

是的,但必须明确说明:

COPY mytable (col1, col2, col3)
FROM 'file.csv'
(FORMAT 'csv', HEADER);

缺少的col2 将用其默认值填充(NULL,除非您定义了一个)。

【讨论】:

以上是关于如何将 CSV 复制到缺少列的表中?的主要内容,如果未能解决你的问题,请参考以下文章