/*
函数名称:f_SplitToNvarchar
作用:实现split功能的函数
更新记录:
设计思路:将nvarchar类型字符结合的一个串,分隔到一张只有一列nvarchar类型的表里
*/
create FUNCTION [dbo].[f_SplitToNvarchar]
(
@SourceSql NVARCHAR(MAX),--源分隔字符串
@StrSeprate VARCHAR(10)--分隔符
)
RETURNS @temp TABLE(col NVARCHAR(MAX),num int)
AS
BEGIN
DECLARE @i INT
SET @SourceSql = RTRIM(LTRIM(@SourceSql))
SET @i = CHARINDEX(@StrSeprate, @SourceSql)
declare @c int
set @c=1
WHILE @i >= 1
BEGIN
INSERT @temp (col,num)
VALUES
(
LEFT(@SourceSql, @i -1) ,@c
)
SET @SourceSql = SUBSTRING(@SourceSql, @i + 1, LEN(@SourceSql) -@i)
SET @i = CHARINDEX(@StrSeprate, @SourceSql)
set @c=@c+1
END
IF @SourceSql <> '\'
INSERT @temp (col,num)
VALUES
(
@SourceSql,0
)
RETURN
END