zoukankan      html  css  js  c++  java
  • Function For Return Table

    CREATE FUNCTION dbo.GetResultSetFromString
     ( @InputString NVARCHAR(4000))

    RETURNS @retRows TABLE (
     IndexString NVARCHAR(50) COLLATE DATABASE_DEFAULT,
     Priority TINYINT
     )

     AS 

    BEGIN

    DECLARE @index INT
    DECLARE @Word NVARCHAR(4000)
    DECLARE @CurrentWord VARCHAR(255)
    DECLARE @Separator NVARCHAR(5)
    DECLARE @LoopIndex TINYINT

    SET @Separator = ' '
    SET @index = 1
    SET @Word = @InputString
    SET @LoopIndex = 1
    WHILE LTrim(RTrim(@WOrd)) != ''

     BEGIN
      SET @index = CHARINDEX ( @Separator , @Word , 1 )
     
      IF @index = 0
      BEGIN
       
       SET @index = Len(@Word) + 1
     
      END
     
      SET @CurrentWord = LEFT(@Word,@index - 1)
     
      SET @Word = SubString(@Word,@index+1,Len(@Word))
      
      IF LTrim(RTrim(@CurrentWord)) != ''
      BEGIN
       INSERT INTO @retRows (
        IndexString,
        Priority
       ) VALUES (
        @CurrentWord,
        @LoopIndex
       )
      END
     SET @LoopIndex = @LoopIndex + 1

     END
     
     RETURN
     
    END

    GO
    SET QUOTED_IDENTIFIER OFF
    GO
    SET ANSI_NULLS ON
    GO

    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_NULLS ON
    GO


    CREATE FUNCTION  dbo.boaUpLow (@String VARCHAR(2000)) RETURNS VARCHAR(2000)
    AS
     
    BEGIN
     DECLARE @i INTEGER
     DECLARE @j INTEGER
     DECLARE @Result VARCHAR(2000)
     DECLARE @Upper AS INTEGER
     DECLARE @Find AS VARCHAR(2000)

     SET @j = 1
     SET @i= 1
     SET @Result =''
     SET @Find = ' -&()./_' /* Add to this string any character you want to eliminate */
     SET @Upper = 1

     WHILE(@i<=len(@String))

      BEGIN
       SET @j=1
       IF (@Upper = 1 )
        SET @Result = @Result + upper(Substring(@String,@i,1))
       ELSE
        SET @Result = @Result + Lower(Substring(@String,@i,1))
       /* End */

       SET @Upper = 0

       WHILE(@j<=len(@find))
        BEGIN
         IF  substring(@String,@i,1) = substring(@Find,@j,1)
           SET @Upper = 1 
         SET @j=@j+1
        END
       
       SET @i=@i+1
      
      END
     
     RETURN (@Result)
    END

    GO
    SET QUOTED_IDENTIFIER OFF
    GO
    SET ANSI_NULLS ON
    GO

    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_NULLS ON
    GO

    CREATE FUNCTION dbo.EscapeSingleQuotes (
     @String NVARCHAR(4000)
    )
    RETURNS NVARCHAR(4000) AS
    BEGIN
     
     RETURN REPLACE(@String, '''', '''''')
     
    END

    GO
    SET QUOTED_IDENTIFIER OFF
    GO
    SET ANSI_NULLS ON
    GO

  • 相关阅读:
    省选D2T2 滚榜
    CF1516E(第一类斯特林数)
    Atcoder ZEP F题
    Atcoder ARC 115 A~D
    Atcoder ARC 117
    「舞蹈链 DLX 」学习笔记
    「FJOI-2021」仰视那片离我远去了的天空。
    「UVA1603」破坏正方形 Square Destroyer
    「网络流」学习笔记
    博客搬家
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/1650917.html
Copyright © 2011-2022 走看看