请教一个oracle中替换最后出现的特定字符的函数问题

高手哪位知道,请教一个oracle中替换最后出现的特定字符的函数问题?

一串字符串,我想将这个字符串中最后一次出现的逗号字符去掉(即替换为空),比如

“create table a(a number,b number,c number, ---colname)”,我想去掉最后一个逗号,保留其余所有的字符串,用什么函数可以直接实现?
--ps oracle 9i数据库,无法使用regexp_replace等正则表达式函数
--ps 用两个substr来拼的方法我知道,就是想问有没有一个函数可以直接实现这个功能的?
最新回答
仰天长啸我也要穿越

2024-11-29 10:07:47

一个函数我不知道有没有,我给你个笨办法
str为你的字符串
substr(str,0,instr(str,',',-1,1)-1)||substr(str,instr(str,',',-1,1)+1)
instr取的逗号从右往左第一次出现的位置,
然后分别取这个位置两端的字符串,合并
PS:我是不知道有没有这种函数,反正我没碰见过
栖止你掌

2024-11-29 22:34:14

找个小规律,“,--”替换成"--",不就OK了。