求教1个sql的写法,感谢

cdbnzc 2004-11-11 09:11:07
我现在有字段
A
B
C
D
E
另外有一个字符串string = abc|def|ghi|jkl|mno
我现在要从这个字符串中根据'|'符号来分割字符串,分别赋值给A,B,C,D,E
请问该怎么写?
...全文
68 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cdbnzc 2004-11-11
  • 打赏
  • 举报
回复
嗯,好,了解。马上揭帖。
bzszp 2004-11-11
  • 打赏
  • 举报
回复
是4
sorry:
instr(str,'|',2)-instr(str,'|')-1 //后面都需要减1

cdbnzc 2004-11-11
  • 打赏
  • 举报
回复
还有一个问题substr(str,instr(str,'|')+1,instr(str,'|',2)-instr(str,'|'))这句话里面
instr(str,'|',2)-instr(str,'|')减出来的结果是3,还是4?
请再回答一下好么?
zhangzhidong2002 2004-11-11
  • 打赏
  • 举报
回复
同意bzszp(SongZip)的見解
cdbnzc 2004-11-11
  • 打赏
  • 举报
回复
还有一个问题substr(str,instr(str,'|')+1,instr(str,'|',2)-instr(str,'|'))这句话里面
instr(str,'|',2)-instr(str,'|')减出来的结果是3,还是4?
cdbnzc 2004-11-11
  • 打赏
  • 举报
回复
哦,我懂了,谢谢
cdbnzc 2004-11-11
  • 打赏
  • 举报
回复
请问下这句 substr(str,1,instr(str,'|')-1)是不是判断第一个分隔符'|'?
bzszp 2004-11-11
  • 打赏
  • 举报
回复
insert into tbname(a,b,c,d,e)
select
substr(str,1,instr(str,'|')-1),
substr(str,instr(str,'|')+1,instr(str,'|',2)-instr(str,'|')),
substr(str,instr(str,'|',2)+1,instr(str,'|',3)-instr(str,'|',2)),
substr(str,1,instr(str,'|',3)+1,instr(str,'|',4)-instr(str,'|',3)),
substr(str,instr(str,'|',4)+1)
from ...

17,075

社区成员

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

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