(将此问答序列发布在SO上,因为我相信一些新用户可能会遇到类似的“障碍”。-G)
如何处理Snowpipe中的特殊字符
我正在创建基于csv文件的snowpipe。我的csv文件在几列中包含特殊字符。请告诉我如何编写select语句以在snowpipe中处理任何特殊字符。
(将此问答序列发布在SO上,因为我相信一些新用户可能会遇到类似的“障碍”。-G)
如何处理Snowpipe中的特殊字符
我正在创建基于csv文件的snowpipe。我的csv文件在几列中包含特殊字符。请告诉我如何编写select语句以在snowpipe中处理任何特殊字符。
ESCAPE
参数来定义显式转义字符。例如,你可以使用ESCAPE='\\'
,然后在每个想要转义的特殊字符前面添加一个单独的\
字符。snowpipe命令嵌入了包含select语句(转换)的copy语句,并且我们可以使用字符串函数来去除特殊字符。
/* Data load with transformation */
COPY INTO [<namespace>.]<table_name> [ ( <col_name> [ , <col_name> ... ] ) ]
FROM ( SELECT [<alias>.]$<file_col_num>[.<element>] [ , [<alias>.]$<file_col_num>[.<element>] ... ]
FROM { internalStage | externalStage } )
[ FILES = ( '<file_name>' [ , '<file_name>' ] [ , ... ] ) ]
[ PATTERN = '<regex_pattern>' ]
[ FILE_FORMAT = ( { FORMAT_NAME = '[<namespace>.]<file_format_name>' |
TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML } [ formatTypeOptions ] } ) ]
注意:我会很有兴趣看到是否还有其他人成功地使用了另一种解决方案...-G