分类分类
2015-06-28 00:00作者:网管联盟
因为工作的原因,开发过一个拆分字符串的SQL函数,现在把它贴出来,与大家共勉学习。
该函数如下:
| 以下为引用的内容:
CREATE function [dbo].[StringSplit](@str nvarchar(max),@spliter nvarchar(10)) returns @tb table(ch nvarchar(256)) AS BEGIN DECLARE @Num int,@Pos int, @NextPos int SET @Num = 0 SET @Pos = 1 WHILE(@Pos <= LEN(@str)) BEGIN SELECT @NextPos = CHARINDEX(@spliter, @str, @Pos) IF (@NextPos = 0 OR @NextPos IS NULL) SELECT @NextPos = LEN(@str) + 1 INSERT INTO @tb VALUES(RTRIM(LTRIM(SUBSTRING(@str, @Pos, @NextPos - @Pos)))) SELECT @Pos = @NextPos+1 END return END 使用方法: Syntax: StringSplit (stringToSplit nvarchar(max) , separator nvarchar(10) )ArgumentsstringToSplit 用于分割的文本separator 分隔字符Samples在存储过程或者SQL脚本中,使用如下的方法 SELECT * FROM dbo.StringSplit('计算机,IT,C#,SQL',',') |
得出的结果如下:
| 以下为引用的内容:
计算机 IT C# SQL |
相关文章