请问怎么用SQL语句取一个字段中的扩展名?

windy_wzh 2006-04-11 01:50:20
这个字段中存放的是一个URL,如http://vod1.188mtv.com/1389/pwb_bdba.wmv,我想把.wmv取出来,请问应该怎么取?谢谢!
我用select right(PROGRAM_OTHER_URL,len(PROGRAM_OTHER_URL)-charindex('.',PROGRAM_OTHER_URL))

这样取的不是最后的扩展名。
...全文
186 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
JonasFeng 2006-04-11
  • 打赏
  • 举报
回复
试下:
declare @test Varchar(200)
set @test='dfdsf.fjdsaajfla.fdjals'
select reverse(left(reverse(@test),charindex('.',reverse(@test))-1))
windy_wzh 2006-04-11
  • 打赏
  • 举报
回复
select REVERSE(left(REVERSE(program_other_url),charindex('.',REVERSE(program_other_url)))) from program_info
用这一句可以了
itblog 2006-04-11
  • 打赏
  • 举报
回复
declare @s varchar(100)
declare @t int
set @s='pwb_bdba.wmv'
select @s=reverse(left(reverse(@s),charindex('.',reverse(@s))-1))
print @s
itblog 2006-04-11
  • 打赏
  • 举报
回复
select reverse(left(reverse(PROGRAM_OTHER_URL),charindex('.',reverse(PROGRAM_OTHER_URL))-1))
xeqtr1982 2006-04-11
  • 打赏
  • 举报
回复
declare @t varchar(100)
set @t='http://vod1.188mtv.com/1389/pwb_bdba.wmv'
select right(@t,charindex('.',reverse(@t)))
--楼主看看这样行吗
windy_wzh 2006-04-11
  • 打赏
  • 举报
回复
也就是说 charindex函数 能不能从后往前搜索字符,取最后一个. 的位置。不知有没有提供这样的功能?

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧