sql 分割字符串

ALTER function dbo.UDF_SplitSubString 

 
@Expression varchar(8000
,
@Delimiter varchar(100
,@ 
int 

returns varchar(8000
as 
begin 
--declare @Expression varchar(8000) 
--
set @Expression = 'abc@@pppp@aa' 
--
declare @Delimiter varchar(100) 
--
set @Delimiter = '@@@'
--
declare @ int 
--
set @ = 3

declare @p int 
set @p = CharIndex(@Delimiter,@Expression
if @p > 0
begin
   
set @p = @p + len(@Delimiter- 1
end
declare @i int 
set @i = 1 
while @i < @ 
begin  
   
set @i = @i + 1
   
set @Expression = substring (@Expression@p + 1,len(@Expression- @p ) 
   
set @p = CharIndex(@Delimiter,@Expression)
   
if @p > 0
   
begin
      
set @p = @p + len(@Delimiter- 1
   
end
   
else
   
begin
      
break
   
end
end 

declare @s varchar(1000
if @p = 0 and @i = @
begin 
   
set @s = @Expression
end 
else if @i = @ 
begin 
   
set @s = substring(@Expression1,@p - len(@Delimiter)) 
end 
return @s
end 

GO

declare @ varchar(1000
set @ = '@@playyuer@www&&.Microshaoft&&com@90.90@@pppp@.' 
declare @d varchar(1000
set @d = '@@'
select 
 dbo.UDF_SplitSubString (@ , 
@d0
,dbo.UDF_SplitSubString (@ , 
@d1
,dbo.UDF_SplitSubString (@ , 
@d2
,dbo.UDF_SplitSubString (@ , 
@d3
,dbo.UDF_SplitSubString (@ , 
@d4
,dbo.UDF_SplitSubString (@ , 
@d5
,dbo.UDF_SplitSubString (@ , 
@d6
,dbo.UDF_SplitSubString (@ , 
@d7
,dbo.UDF_SplitSubString (@ , 
@d8
,dbo.UDF_SplitSubString (@ , 
@d100

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值