是否可以使用雪花将csv文件中的所有逗号替换为点?我在copy into
中使用了替换,但这导致了写了很多行编码,我想找到一个直接替换所有逗号的过程。
是否可以在csv文件的每一列上进行循环,并像这样替换逗号?
DECLARE ColNames NVARCHAR(MAX) = ''
SELECT @ColNames = (@ColNames +)
CASE
WHEN c.DATA_TYPE IN ('DECIMAL') THEN REPLACE(c.DATA_VALUE, ',','.')
ELSE c.DATA_VALUE
END
我暂时用了这个代码,但不起作用
copy into PUBLIC.VENTE from (select replace(c.*,',','.') from @test_database/file.csv c);
提前感谢您的帮助,
不能在所有列中替换(c.*,',','.'(,它必须逐列进行,如下所示:
replace(c.$1, ',', '.'), replace(c.$2, ',', '.') ...
或者,如果列数很大并且需要经常使用,则可以创建一个SP来为您构建列列表。