如何在Oracle10g中获取换行符中的列值

如何在Oracle10g中获取换行符中的列值,oracle10g,Oracle10g,我有以下要求: Emp表有以下3列 Id、名称和编程 Id Name Programming -- ---- --------------- 1 Raju Java,Plsql,sql 2 Kamal C,C++,Java ------------------------- 我需要以下输出,如下所示: Id Name Programming -------------------------------------

我有以下要求:

Emp
表有以下
3列

Id、名称和编程

Id   Name   Programming 
-- ---- ---------------
1    Raju   Java,Plsql,sql 
2    Kamal  C,C++,Java 
-------------------------
我需要以下输出,如下所示:

Id        Name                 Programming 
--------------------------------------------
1         Raju                     Java 
                                   plsql 
                                   sql 
2         kamal                     c 
                                    c++ 
                                   Java. <code>
------------------------------------------------        
Id
1
Name
Raja
,然后编程是
Java
, 在下一行中,id和Name的
not
值应该是
但是
对于
编程
应该有Plsql,并且在下一行中也应该没有相同的值

对于
Id
Name
,则对于编程,它应该是
Sql

有人能给我推荐一下获取上述格式的代码吗?
先谢谢你

使用函数从逗号分隔的字符串创建集合:

1) 创建类型

CREATE OR REPLACE TYPE  "TNA_STRMANIPTYPE" as table of varchar2(4000)
/
(二)

现在可以将此集合用作表:

SELECT column_value 
  FROM TABLE(str_manipulation('Java,Plsql,sql'))
使用此函数并将其转换到表中,您需要根据需要处理插入部分的其余部分:)

SELECT column_value 
  FROM TABLE(str_manipulation('Java,Plsql,sql'))