带有区分大小写的标题的Redshift Unload

时间:2018-12-10 20:17:48

标签: amazon-web-services amazon-s3 amazon-redshift

以前,卸载命令未创建标题行。现在可以通过“ HEADER”选项使用此功能。但是,它不会保留标题的大小写。

以下语句创建一个标题为“ my column header 1”的文件...

UNLOAD ('SELECT col1 "My Column Header 1", col2 "My Column Header 2" FROM mytable;')  
TO 's3://mybucket/filename.csv.'  
CREDENTIALS 'aws_iam_role=mycredentials'  
DELIMITER ','  
HEADER  
ALLOWOVERWRITE 
ADDQUOTES  
PARALLEL OFF;

是否可以在列标题中保留大小写?

1 个答案:

答案 0 :(得分:0)

没有任何方法可以使用HEADER选项,因为Redshift没有区分大小写的列名。所有标识符(表名,列名等)始终存储在Redshift元数据中的小写中。

您可以选择设置一个参数,以便在SELECT语句的结果中所有列名都以大写形式返回。

https://docs.aws.amazon.com/redshift/latest/dg/r_names.html

  

标准和定界标识符中的ASCII字母不区分大小写,并在数据库中折叠为小写字母。在查询结果中,默认情况下,列名以小写形式返回。要以大写形式返回列名,请将describe_field_name_in_uppercase配置参数设置为true。