如何分离取自 table 行的值并将其存储在雪花数组中

How to separate a value taken from a table row and store it in an array in a snowflake

我需要 return 存储过程中的数组,该数组从 table 中获取逗号分隔的字符串值并根据逗号划分该字符串并将它们存储在数组中。

示例:我的 table 有一个列 Tab_Val,其行值为 "COL1,COL2,COL3,COL4",我需要在我的存储过程中获取此行和 return 数组作为arr =['COL1','COL2','COL3','COL4']

这是我的尝试:

CREATE OR REPLACE PROCEDURE TAB()
    RETURNS ARRAY
    LANGUAGE JAVASCRIPT
    AS
    $$
    var arr = [];
    var stmt = snowflake.createStatement({sqlText: "Select Tab_Val From TABLE1"});
    var r = stmt.execute(); 
    return arr;
    $$

试试这个

CREATE OR REPLACE TABLE ARRAY_TABLE(ARRAY_CONTENT VARCHAR);
INSERT INTO ARRAY_TABLE VALUES('APPLE,ORANGE,GRAPES,PEARS');
SELECT SPLIT(ARRAY_CONTENT, ',') as str_array FROM ARRAY_TABLE;