use tempdb
go
declare @sql varchar(3000),@a varchar(3000),@b varchar(3000),@n int,@c int,@i int
set @c=1
set @sql='G:\imgs\news\aa.jpg'
set @n=len(@sql)-len(replace(@sql,'\',''))
set @i=1
while @c<=@n
begin
--select substring(@sql,@i,patindex('%\%',@sql)-1)
select @i=charindex('\',@sql,@i+1)+1
set @c=@c+1
end
select @a=substring(@sql,1,@i-1)
select @b=substring(@sql,@i,len(@sql))
select @a
select @b
go
declare @sql varchar(3000),@a varchar(3000),@b varchar(3000),@n int,@c int,@i int
set @c=1
set @sql='G:\imgs\news\aa.jpg'
set @n=len(@sql)-len(replace(@sql,'\',''))
set @i=1
while @c<=@n
begin
--select substring(@sql,@i,patindex('%\%',@sql)-1)
select @i=charindex('\',@sql,@i+1)+1
set @c=@c+1
end
select @a=substring(@sql,1,@i-1)
select @b=substring(@sql,@i,len(@sql))
select @a
select @b
Declare @a varchar(20)
Declare @b varchar(20)
Set @a=Left('G:\imgs\news\aa.jpg',13)
Set @b=Right('G:\imgs\news\aa.jpg',Len('G:\imgs\news\aa.jpg')-13)
如果这个字符串的前一段'G:\imgs\news\'是变化的话
Declare @a varchar(20)
Declare @b varchar(20)
Set @a=Left('G:\imgs\news\aa.jpg',CharIndex('\','G:\imgs\news\aa.jpg',(CharIndex('\','G:\imgs\news\aa.jpg',(CharIndex('\','G:\imgs\news\aa.jpg')+1))+1)))
Set @b=Right('G:\imgs\news\aa.jpg',Len('G:\imgs\news\aa.jpg')-CharIndex('\','G:\imgs\news\aa.jpg',(CharIndex('\','G:\imgs\news\aa.jpg',(CharIndex('\','G:\imgs\news\aa.jpg')+1))+1)))