0

我正在使用元组数组形式的源字段

[(a,145), (b,12), (c,63), (d,1), (e,54), (f,99), ...]

我无法将此字段加载到雪花的变体类型中。当我尝试加载此字段时,我收到以下错误 - 异常:net.snowflake.client.jdbc.SnowflakeSQLException:解析 JSON 时出错。

作为一种解决方法,我将此字段作为 VARCHAR 加载到 Snowflake 中,但我现在无法尝试将其解析为数组并使用横向展平函数展平它。

我的目标是展平这个数组并将每个元组分解成自己的行。然后我想将元组拆分为单独的列。有没有人建议如何让它在雪花中工作?

4

1 回答 1

1
select 
    split_part(regexp_replace(value, '[\\(\\)]'), ',', 1) as left, 
    split_part(regexp_replace(value, '[\\(\\)]'), ',', 2) as right
from table(split_to_table(
    regexp_replace('[(a,145), (b,12), (c,63), (d,1), (e,54), (f,99)]', '[\\[\\]]',''),
    ' ') 
   );
于 2020-03-31T17:18:33.223 回答