加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

小经验:SQL中如何去掉字符串中最后一个字符

(2012-08-27 16:53:47)
标签:

oracle

plsql

it

分类: 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就可以轻松实现删除字符串最后一个字符的功能。

总结:在数据库中当需要实现某个功能时,首先要查标准函数,最好能用标准函数解决问题,若标准函数不能解决问题,则就需要自己来编写函数了,所以不要上来就开始自己编写函数,而是要多看写资料,多查一些文档,这样就可以少走很多弯路。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有