忘了之前為何有這個需求了
好像是因為要處理某一些特別的字串
還好還有很多高手有做
就直接拿來調整一點點就直接用啦
CREATE function My_split(@aString varchar(8000),@pattern varchar(10)) returns @temp table([Sid] [int] IDENTITY (1,1) NOT NULL ,Myvalues varchar(100)) as begin declare @i int set @aString=rtrim(ltrim(@aString)) set @i=charindex(@pattern,@aString) while @i>=1 begin insert @temp values(left(@aString,@i-1)) set @aString=substring(@aString,@i+1,len(@aString)-@i) set @i=charindex(@pattern,@aString) end if @aString<>'' insert @temp values(@aString) return end Step2: 使用方式如下: Declare @ID varchar(600) 參數 DEclare @x varchar(1) 需分隔符號 set @ID = '111,222,333,444' set @x = ',' select Myvalues FROM my_split(@ID,@x) 結果 111 222 333 444
參考:
http://blog.csdn.net/fanzhonglei/archive/2008/06/10/2532668.aspx
http://shihshu.blogspot.com/2009/07/t-sql.html
http://dev.firnow.com/course/7_databases/sql/sqlServer/20100710/403674.html
全站熱搜
留言列表