mssql sqlserver 将字符串分解为单个字符的方法分享


摘要:
下文讲述使用sql脚本将字符串拆分为单个字符的方法分享,如下所示:
实验环境:sql server 2008 R2



实现思路:
将整个字符串,采用substring分解为一个一个字符,然后存储至数据表中,返回的数据表则会单个字符

  
//函数功能:拆分字符串为单个字符,放入数据表中,并返回
CREATE FUNCTION [dbo].[fn_SplitStringToCharReturnTable]
(
    @str  NVARCHAR(MAX)
)
RETURNS @tmp TABLE
(
    [t] [nvarchar](2) NULL
)
AS
BEGIN    
    DECLARE @p INT = 1, @strLen INT = LEN(@str)
    WHILE @p <= @strLen
    BEGIN
       INSERT INTO @tmp VALUES(SUBSTRING(@str, @p, 1))
        SET @p = @p + 1
    END
    RETURN
END
GO
-----例:
  select [dbo].[fn_SplitStringToCharReturnTable]('maomao365');