一个通过|拆分的问题

qq_40608182 2017-11-30 11:54:58
有如下字符串
abc|def|ghi|
123|456|789|

我想通过|拆分保存表有三个字段的表中
如下:
字段1 字段2 字段3
abc def ghi
123 456 789
...全文
127 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
花开了叫我 2017-12-01
  • 打赏
  • 举报
回复
能substr为什么要用replace牺牲性能
qq_40608182 2017-12-01
  • 打赏
  • 举报
回复
引用 1 楼 qq646748739 的回复:
试试这个:

with tmp as
(
select 'abc|def|ghi' a from dual union all 
select '123|456|789' from dual
) 
select regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\1'), 
       regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\2'), 
       regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\3') 
  from tmp
太感谢了,学到东西了。
碧水幽幽泉 2017-11-30
  • 打赏
  • 举报
回复
试试这个:

with tmp as
(
select 'abc|def|ghi' a from dual union all 
select '123|456|789' from dual
) 
select regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\1'), 
       regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\2'), 
       regexp_replace(a,'(\w+)\|(\w+)\|(\w+)','\3') 
  from tmp

17,092

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧