SQL Server分割函数顾名思义就是按指定符号分割字符串,返回分割后的元素个数,下面小编就以字母a,b,c ,按照‘,'进行分割实例讲解分析,具体方法如下:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
CREATE FUNCTION dbo.f_splitstr(@SourceSql NVARCHAr( MAX ),@StrSeprate VARCHAR (100)) RETURNS @ temp TABLE (F1 VARCHAR (100)) AS BEGIN DECLARE @ch AS VARCHAR (100) SET @SourceSql=@SourceSql+@StrSeprate WHILE(@SourceSql<> '' ) BEGIN SET @ch= LEFT (@SourceSql,CHARINDEX(@StrSeprate,@SourceSql,1)-1) INSERT @ temp VALUES (@ch) SET @SourceSql=STUFF(@SourceSql,1,CHARINDEX(@StrSeprate,@SourceSql,1), '' ) END RETURN END GO |
1
|
SELECt * FROM dbo.f_splitstr( 'a,b,c' , ',' ) |
以上操作就实现了对字符串的分割处理,当然函数具体内容可以根据用户需求进行修改。
注:在SQL Server 2016以后,微软官方加入了一个STRING_SPLIT,也是用来实现分割函数的,如果你的数据库版本够高,可以选择使用官方这个函数的,方法和上面的一样:
1
|
SELECt * FROM STRING_SPLIT( 'a,b,c' , ',' ) |
以上是SQL Server数据库中如何使用分隔函数实例详解图文教程,希望你喜欢,请继续关注湖南电脑技术网。