Snowflake cloud data platform 将字符串和输出拆分为行

Snowflake cloud data platform 将字符串和输出拆分为行,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我想根据分隔符“”拆分字符串,并将结果放入行中。因此,我试图在Snowflake中使用SPLIT_to_TABLE函数,但没有成功 我使用regexp\u replace来清理字符串。如何将其输出到每个id的行中 SELECT value, TRIM(regexp_replace(value, '[{}_]', ' ')) AS extracted 以下是示例数据: +--------+------------------------------------+ | id

我想根据分隔符“”拆分字符串,并将结果放入行中。因此,我试图在Snowflake中使用
SPLIT_to_TABLE
函数,但没有成功

我使用
regexp\u replace
来清理字符串。如何将其输出到每个id的行中

SELECT value,
       TRIM(regexp_replace(value, '[{}_]', ' ')) AS extracted
以下是示例数据:

+--------+------------------------------------+
|   id   |               value                |
+--------+------------------------------------+
| fsaf12 | {Other Questions,Missing Document} |
| sfas11 | {Other}                            |
+--------+------------------------------------+
+--------+------------------+
|   id   |    extracted     |
+--------+------------------+
| fsaf12 | Other Questions  |
| fsaf12 | Missing Document |
| sfas11 | Others           |
+--------+------------------+
预期结果:

+--------+------------------------------------+
|   id   |               value                |
+--------+------------------------------------+
| fsaf12 | {Other Questions,Missing Document} |
| sfas11 | {Other}                            |
+--------+------------------------------------+
+--------+------------------+
|   id   |    extracted     |
+--------+------------------+
| fsaf12 | Other Questions  |
| fsaf12 | Missing Document |
| sfas11 | Others           |
+--------+------------------+

这里是答案,使用了replace函数而不是regexp\u replace

数据表(ID,VALUEA)为 (

从值('fsaf12'、'{Other Questions,Missing Document}')、('sfas11'、'{Other}'中选择*)

)


选择ID,REPLACE(REPLACE(VALUE,'{','','}','')从DATATABLE拆分的_值,横向拆分_到_表(VALUEA,',')

添加另一种拆分数据并将其输出为行的方法:

SELECT b,TRIM(regexp_replace(splitvalue, '[{}_]', '')) AS extracted from
(SELECT b, C.value::string AS splitvalue
FROM split,
     LATERAL FLATTEN(input=>split(a, ',')) C);

其中a和b为表“拆分”中的列,数据如下:

A. B {第一,第二} 第1行 {第三,第四} 第2行