Привет, у меня в Oracle 10 есть столбец таблицы, который содержит строковый массив:
TERMS_TABLE
DOC_ID | TERMS_ARRAY
120 | apple,orange,banana,.....,termN
Есть N терминов.Я хочу отделить запятые от TERMS_ARRAY и вставить их в другую таблицу
COMMA_SEP_TABLE
DOC_ID |TERM
120 | apple
120 | orange
120 | banana
.....
Я пробую этот код, но он ничего не делает:
CREATE OR REPLACE SEPERATE_COMMA IS
l_tab DBMS_UTILITY.LNAME_ARRAY ;
l_tablen number;
CURSOR CUR1 IS SELECT * FROM TERMS_TABLE ;
BEGIN
EXECUTE IMMEDIATE ('TRUNCATE TABLE COMMA_SEP_TABLE);
FOR R IN CUR1
LOOP
DBMS_UTILITY.comma_to_table (R.TERMS_ARRAY, l_tablen, l_tab);
FOR i IN 1 .. l_tablen
LOOP
INSERT INTO COMMA_SEP_TABLE
VALUES (R.DOC_ID, l_tab (i));
COMMIT;
END LOOP;
END LOOP;
END;
Как можно разделить запятые?