根据分割字符,获得分割字符后面的字符串

/*
--根据分割符@splitchar 获得一个字符串@splitchar后面的字符串
select dbo.GetdatafileName('D:/Data/Base/master_log.ldf','/')
查询出来的数据为:master_log.ldf
*/
create function GetdatafileName(@filename varchar(200),@splitchar varchar(20))
returns varchar(200)
as
begin
declare
@dname varchar(200),
@i    int
  select @i=len(@filename)-len(replace(@filename,@splitchar,''))
  set @dname = @filename
  while @i>0
  begin
  select @dname= STUFF(@dname,1,charindex(@splitchar,@dname,1),'')
  set @i=@i-1
  end
set @dname=substring(@dname,len(@splitchar),len(@dname))
return @dname
end

你可能感兴趣的:(数据库(sql))