转换字符串的字符成单个字符并用逗号分隔

Sample如:‘insus’ --> 's','u','s','n','i'

转换字符串的字符成单个字符并用逗号分隔,这样可以在动态SQL中供SELECT动态调用至WHERE IN条件内。

ConvertINString
CREATE FUNCTION [dbo].[ConvertINString]
(
    @String  NVARCHAR(MAX)
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
   DECLARE @Result NVARCHAR(MAX= N''
   DECLARE @I INT = LEN(@String)
   
   WHILE @I > 0
   BEGIN     
         set @Result = @Result + N',' + '''' +  SUBSTRING(@String@I1+ ''''
         SET @I = @I - 1
    END
   IF LEN(@Result> 0
        SET @Result = SUBSTRING(@Result,2,LEN(@Result)-1)
        
   RETURN @Result
END

 

posted @ 2012-02-23 00:48  Insus.NET  阅读(691)  评论(0编辑  收藏  举报