小经验:SQL中如何去掉字符串中最后一个字符
(2012-08-27 16:53:47)
标签:
oracleplsqlit |
分类: Oracle |
在oracle数据库操作中需要去掉一个字符串的最后一个字符,也就是最右边的一个字符。字符串操作首先想到的是substr函,SUBSTR(char,position,substring_length),substr是返回一串截取的字符串,position是返回字符串的起点位置,substring_length是返回的长度。
如果position是0,就被默认为1,如果position是正数,那就从第一字符最左边的字符开始截取。如果posttion是负数,就从最后一个字符串开始,也就是最右边的字符串开始截取。如果substring_length被忽略,则函数返回整个字符串,如过果substring_length小于1,则返回的空值。
如果需要要实现只去掉字符串最后一个字符,那么这个substr看来是满足不了要求的,因为这个截取长度只能是从左到右计算,而不能从右到左开始计算。若非常要用substr函数实现这个功能,则需要先判断这个字符串的长度才可以,那就需要自己写一个函数,这肯定不是最好的解决办法。
最好的解决办法就是应用RTRIM函数,这个函数的作用就是从最右边开始删除要删除的字符串,语法为RTRIM(char,set),char是函数操作的对象,set是要删除的字符串,用这个rtrim就可以轻松实现删除字符串最后一个字符的功能。
总结:在数据库中当需要实现某个功能时,首先要查标准函数,最好能用标准函数解决问题,若标准函数不能解决问题,则就需要自己来编写函数了,所以不要上来就开始自己编写函数,而是要多看写资料,多查一些文档,这样就可以少走很多弯路。
前一篇:Framework的一些基本概念
后一篇:什么是多维数据库?