sql 字段数据拆分

原始数据:

行转列可以不懂可以参考我的博客:https://blog.csdn.net/qq_27600723/article/details/80687764

SELECT bz.bzmc,bz.jdgs,listagg(to_char(bz.lx),',') within group (order by to_char(bz.lx)) lx

  FROM GZWZ_BZMCZJDGS bz group by bz.bzmc,bz.jdgs


-- 注意:

-- length(lx):求lx字符串长度

-- instr(lx,','): 求逗号第一次出现的下标

-- substr(lx,instr(lx,',',-1,1)+1,length(lx)):获取最后一个拼接数据

-- sql 字段数据拆分,获取最后一个拼接数据
select bzmc,jdgs,substr(lx,instr(lx,',',-1,1)+1,length(lx)) lx from (SELECT bz.bzmc,bz.jdgs,listagg(to_char(bz.lx),',') within group (order by to_char(bz.lx)) lx
  FROM GZWZ_BZMCZJDGS bz group by bz.bzmc,bz.jdgs);


-- 注意:

-- REGEXP_SUBSTR(lx,'[^,]+',1,1,'i') : 使用正则匹配第一个逗号,"i"表示忽略大小写

-- sql 字段数据拆分,获取第一个拼接数据
SELECT REGEXP_SUBSTR(lx,'[^,]+',1,1,'i') AS STR FROM (SELECT bz.bzmc,bz.jdgs,listagg(to_char(bz.lx),',') within group (order by to_char(bz.lx)) lx

  FROM GZWZ_BZMCZJDGS bz group by bz.bzmc,bz.jdgs);


没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭