有时候根据实际需求,我们可能需要把一个列中的数据分割成多列去查询或存储。
那么首先,要确定根据什么要求去分割列,特定字符,或字符顺序等。
下面是根据符号‘,'进行分列
SQL>create table test(name varchar2(50));
SQL>insert into test values('JL=合格,RQ=2014年XX月XX日');
SQL>commit;
SQL>select instr(name,',') from test;
INSTR(NAME,',')
---------------
6
SQL>select substr(name,1,instr(name,',')-1) jl, substr(name,instr(name,',')+1) rq from test; //注意符号全半角
JL RQ
------------------------------ ------------------------------
JL=合格 RQ=2014年XX月XX日
如果数据比较规范,也可以 根据特等顺序分列
SQL >select substr(name,1,5) jl,substr(name,7) rq from test;
JL RQ
------------------------------ ------------------------------
JL=合格 RQ=2014年XX月XX日
那么首先,要确定根据什么要求去分割列,特定字符,或字符顺序等。
下面是根据符号‘,'进行分列
SQL>create table test(name varchar2(50));
SQL>insert into test values('JL=合格,RQ=2014年XX月XX日');
SQL>commit;
SQL>select instr(name,',') from test;
INSTR(NAME,',')
---------------
6
SQL>select substr(name,1,instr(name,',')-1) jl, substr(name,instr(name,',')+1) rq from test; //注意符号全半角
JL RQ
------------------------------ ------------------------------
JL=合格 RQ=2014年XX月XX日
如果数据比较规范,也可以 根据特等顺序分列
SQL >select substr(name,1,5) jl,substr(name,7) rq from test;
JL RQ
------------------------------ ------------------------------
JL=合格 RQ=2014年XX月XX日
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29193965/viewspace-1274510/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29193965/viewspace-1274510/