如何使用Lambda将CSV中的特定列复制到Redshift表中

时间:2019-04-29 07:09:31

标签: amazon-web-services aws-lambda amazon-redshift

我正在尝试使用lambda中的aws copy命令将ins s3中的csv文件加载到redshift中。问题是我在csv中的列比在redshift表中更多。 因此,每当我触发lambda函数时,都会出现错误“找到额外的列”

如何从csv加载特定列

我的csv文件的格式为

年,月,描述,类别,SKU,销售额(月)

我的redshift表的格式为

@NgModule({       
    imports: [
        CommonModule
    ],
    declarations: [SharedPipesModule], // Adding SharedPipesModule to declarations
    exports: [SharedPipesModule], // Adding SharedPipesModule to exports
})

我的复制命令如下

year month description category SKU
-----------------------------------

1 个答案:

答案 0 :(得分:0)

您可以指定要导入到表中的列的列表-有关更多详细信息,请参见COPY command documentation

COPY public.sales (year, month, description, category, SKU)
FROM 's3://mybucket/sales.csv' 
iam_role 'arn:aws:iam::99999999999:role/RedShiftRole' 
delimiter ',' 
ignoreheader 1 
acceptinvchars