sql Server字符串截取函数

--sql Server字符串截取函数

CREATE   FUNCTION   f_GetStr(  
  @s   varchar(8000),            --字符串列表  
  @pos   int,                    --要获取的数据信息段  
  @split   varchar(10)           --分隔符  
  )RETURNS   varchar(100)  
  AS  
  BEGIN  
  IF   @s   IS   NULL   RETURN(NULL)  
  DECLARE   @splitlen   int  
  SELECT   @splitlen=LEN(@split+'a')-2  
  WHILE   @pos>1   AND   CHARINDEX(@split,@s+@split)>0  
   SELECT   @pos=@pos-1,  
   @s=STUFF(@s,1,CHARINDEX(@split,@s+@split)+@splitlen,'')  
  RETURN(ISNULL(LEFT(@s,CHARINDEX(@split,@s+@split)-1),''))  
  END  
  GO   



--测试数据  
  declare   @t   table(FITEM   varchar(100))  
  insert   @t   select   '100..10.'  
  union   all   select   '20.140.10'  
  union   all   select   '150.124.150.10'  
   
  --查询  
  select   fitem1=dbo.f_GetStr(fitem,1,'.')  
  ,fitem2=dbo.f_GetStr(fitem,2,'.')  
  ,fitem3=dbo.f_GetStr(fitem,3,'.')  
  ,fitem4=dbo.f_GetStr(fitem,4,'.')  
  ,fitem4=dbo.f_GetStr(fitem,5,'.')  
  ,fitem4=dbo.f_GetStr(fitem,6,'.')  
  from   @t 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值