存储过程传入字符串后需要拆分

例如‘a,b,c’

1)拆分: 

函数一

create  function  SplitIn(@c   varchar (2000),@split   varchar (2))    

returns   @t   table (col   varchar (20))    

as    

begin     

   while(charindex(@split,@c)<>0)    

     begin    

       insert   @t(col)   values   ( substring (@c,1,charindex(@split,@c)-1))    

       set   @c   =   stuff(@c,1,charindex(@split,@c), '' )    

     end    

   insert   @t(col)   values   (@c)    

   return    

end

函数二:

create function [dbo].[f_split](@SourceSql varchar(max),@StrSeprate varchar(10))

    returns @temp table(Rowvalue varchar(1000))

as

    begin

        declare @i int

        set @SourceSql=rtrim(ltrim(@SourceSql))

        set @i=charindex(@StrSeprate,@SourceSql)

        while @i>=1

        begin

            insert @temp values(left(@SourceSql,@i-1))

            set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)

            set @i=charindex(@StrSeprate,@SourceSql)

        end

        if @SourceSql<>''

        insert @temp values(@SourceSql)

     return

    end

作者:勤劳的小蜜蜂

来源:金蝶云社区

原文链接:https://vip.kingdee.com/article/104218648419506432?productLineId=1

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值