ITPub博客

首页 > 数据库 > Oracle > oracle把一列中数据分割成多列 sql

oracle把一列中数据分割成多列 sql

原创 Oracle 作者:bizhanjie 时间:2014-09-19 18:14:10 0 删除 编辑
有时候根据实际需求,我们可能需要把一个列中的数据分割成多列去查询或存储。
那么首先,要确定根据什么要求去分割列,特定字符,或字符顺序等。
下面是根据符号‘,'进行分列
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博客 ” ,链接:https://blog.itpub.net/29193965/viewspace-1274510/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-09-18

  • 博文量
    41
  • 访问量
    296760