使用SQL字符串反转函数REVERSE巧妙实现lastindexof功能

要实现一个简单的业务:

      使用SQL脚本获取字符串‘large/020700/61970b0101.jpg‘ 中的‘61970b0101.jpg‘部分。

先想到的是C#中的lastindexof,但是SQL中没有这个函数,只有charindex函数,只好使用现有资源想办法曲线解决了。

解决思路:

1、使用REVERSE函数将字符串反转

2、使用charindex找到第一个出现‘/‘的位置

3、使用left函数找到‘/‘之前的字符串

4、再次使用REVERSE函数将处理过的字符串反转

具体示例:

DECLARE @Str VARCHAR(50)

SET @Str = ‘large/020700/61970b0101.jpg‘

SET @Str = REVERSE(@Str)

SET @Str = LEFT(@Str,CHARINDEX(‘/‘,@str,0)-1)

SET @Str = REVERSE(@Str)

SELECT @Str

大功告成!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。