Oracle10g 在Oracle 10g中,如何将表的列名传递给表值函数?

Oracle10g 在Oracle 10g中,如何将表的列名传递给表值函数?,oracle10g,Oracle10g,在表中,我有逗号分隔的值,我必须将这些值更改为行 Ex:MSGVALUES列 145,24,56,78 23,45,67 本项目的预期产出 MSGVALUES column 145 24 56 78 23 45 67 我使用谷歌搜索的表值函数(CSV)得到了上述结果 select * from table (CSV('10,20,'34',',') 如果我执行CSV函数,那么我得到的结果如下 1 20 34 现在我的实际需求是,我必须将上述CSV函数应用于我的列名ie.MSG VALUE列

在表中,我有逗号分隔的值,我必须将这些值更改为行

Ex:MSGVALUES列

145,24,56,78 23,45,67

本项目的预期产出

MSGVALUES column
145
24
56
78
23
45
67
我使用谷歌搜索的表值函数(CSV)得到了上述结果

select * from table (CSV('10,20,'34',',')
如果我执行CSV函数,那么我得到的结果如下

1
20
34

现在我的实际需求是,我必须将上述CSV函数应用于我的列名ie.MSG VALUE列。假设我的表名是CODEDESC

,那么您可以将
表()
强制转换加入到您的表中,如下所示:

select csv.*
  from your_tab t, table(csv(t.msgvalues, ',')) csv;

您好,我投票支持以上答案,这是给-ve数字以上的答案对我很有用