zoukankan      html  css  js  c++  java
  • 拆分字符串为单一字符

    如下面这个样子:

    本函式是学习使用WHILE以及SUBSTRING的应用:

    CREATE FUNCTION [dbo].[svf_SplitStringToSingleCharacter](
      @DataSource NVARCHAR(4000)
    )
    RETURNS NVARCHAR(4000)
    AS
    BEGIN
       DECLARE @rtvResult NVARCHAR(4000),@length INT       
    
       SET @length = lEN(ISNULL(@DataSource,'')) 
       
       IF @length = 0
          SET @rtvResult = N''
       ELSE
       BEGIN
            WHILE @length > 0
            BEGIN
                SET @rtvResult = ISNULL(@rtvResult + ',',N'') + '''' + SUBSTRING(@DataSource,@length,1) + ''''
                SET @length = @length - 1
            END
       END
         
       RETURN @rtvResult
    END
    Source Code

     
    上面的自定义的函数,在执行之后所得到的结果,并没有按照输入的顺序排列。

    那Insus.NET可以修改一下:

    CREATE FUNCTION [dbo].[svf_SplitStringToSingleCharacter1](
      @DataSource NVARCHAR(4000)
    )
    RETURNS NVARCHAR(4000)
    AS
    BEGIN
       DECLARE @rtvResult NVARCHAR(4000),@length INT       
    
       SET @length = lEN(ISNULL(@DataSource,'')) 
       
       IF @length = 0
          SET @rtvResult = N''
       ELSE
       BEGIN
            DECLARE @i INT = 1
            WHILE @i <= @length
            BEGIN
                SET @rtvResult =  ISNULL(@rtvResult + ',',N'') + ''''  +  SUBSTRING(@DataSource,1,1) + ''''
                SET @DataSource = STUFF(@DataSource,1,1,N'')
                SET @i = @i + 1
            END
       END
         
       RETURN @rtvResult
    END
    GO
    Source Code

    再来看看执行的结果:

  • 相关阅读:
    父类引用指向子类对象详解
    词尾的-sion和-tion的发音规则
    att&ack学习笔记6
    att&ack框架学习笔记5
    att&ack学习笔记4
    att&ck框架学习笔记3
    att&ck学习笔记2
    att&ck学习笔记1
    kerberos系列之spark认证配置
    kerberos系列之kerberos安装
  • 原文地址:https://www.cnblogs.com/insus/p/9977544.html
Copyright © 2011-2022 走看看