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

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 17:11 点击:

 

要实现一个简单的业务:

 

      使用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

 

 

 

大功告成!

 

摘自 blackField的专栏

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • sql常见面试题
      • SQL SERVER 2005性能之跟踪
      • SQL编程(一)
      • LINUX上RMAN自动备份脚本
      • sql server面试题
      • 如何将多个SQL查询统计结果一次显示出来
      • 浅谈SQL Server中的事务日志(三)----在简单恢复模式下日志的角色
      • SQL小技巧系列 --- 行转列合并
      • sql server 列转行
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1