Oracle10g 在Oracle 10g中,如何将表的列名传递给表值函数?
在表中,我有逗号分隔的值,我必须将这些值更改为行 Ex:MSGVALUES列 145,24,56,78 23,45,67 本项目的预期产出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列
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数字以上的答案对我很有用