如何在redshift copy命令中将小数点分隔符从逗号更改为句点

时间:2014-12-03 14:47:26

标签: amazon-redshift

我正在使用逗号作为小数分隔符而不是fullstop(3,99而不是3.99)的原始数据。有没有办法直接在redshift copy命令中转换它,而不是必须上传然后更改?

1 个答案:

答案 0 :(得分:3)

有两个问题需要考虑:

  • 字段分隔符
  • 替换字符

Amazon Redshift COPY命令中的默认分隔符是管道符(|),除非使用CSV选项,在这种情况下,默认分隔符是逗号(,)

因此,如果您的文件由非逗号字符(例如点“”“符号)分隔,则数字中的逗号不会跨字段分割。

至于将逗号转换为小数,这是不可能。您需要将字段作为字符串加载,然后运行UPDATE命令将字符串复制到数字字段中(也可以替换字符)。

或者,在加载到Redshift之前尝试预处理文件(例如通过sed),因此在加载到Redshift之前它是干净的。