在oracle9i中去掉“86,87,”中最后那个“,”,而中间的“,”不用删除我开始写成,update ja_org set biz_range=substr(biz_range,1,length(biz_range)-1); 却发现实际上这里的数据不一定后面都有“,”号的,如果没有“,”的记录,执行update ja_org set biz_range=substr(biz_range,1,length(biz_range)-1);就惨了,最后的一位数字被删掉了
请问大虾这个case...if该如何用在这里,完成“结尾是“,”号的就删除掉最后一个字符,如果结尾不是“,”号的,就不执行删除操作”的功能如果能把整条sql写出了,最好了,偶是oracle的一只菜鸟谢谢大虾
请问大虾这个case...if该如何用在这里,完成“结尾是“,”号的就删除掉最后一个字符,如果结尾不是“,”号的,就不执行删除操作”的功能如果能把整条sql写出了,最好了,偶是oracle的一只菜鸟谢谢大虾
--------------------------------------------------
86,87,88,SQL> update aa set name=decode(',',substrb(name,-1,1),substrb(name,1,lengthb(name)-1),name);已更新 1 行。SQL> select * from aa;NAME
--------------------------------------------------
86,87,88SQL> update aa set name=decode(',',substrb(name,-1,1),substrb(name,1,lengthb(name)-1),name);已更新 1 行。SQL> select * from aa
2 ;NAME
--------------------------------------------------
86,87,88
rtrim是很好的方法