Retornar uma tabela passando uma array


CREATE  FUNCTION GetTableFromArray

(

             @text varchar(8000), 

             @delimiter varchar(20) = ' '

)

RETURNS @Strings TABLE

(    

      position int IDENTITY PRIMARY KEY,

      value varchar(8000)   

)

AS

BEGIN

 

    DECLARE @index int 

    SET @index = -1 

    

    WHILE (LEN(@text) > 0) 

    BEGIN  

        SET @index = CHARINDEX(@delimiter , @text)  

            IF (@index = 0) AND (LEN(@text) > 0)  

              BEGIN   

                    INSERT INTO @Strings VALUES (@text)

                      BREAK  

              END  

            IF (@index > 1)  

              BEGIN   

                    INSERT INTO @Strings VALUES (LEFT(@text, @index - 1))   

                    SET @text = RIGHT(@text, (LEN(@text) - @index))  

              END  

            ELSE 

                  SET @text = RIGHT(@text, (LEN(@text) - @index)) 

     END

     

    RETURN

END

Comentários

Postagens mais visitadas deste blog

Função em JavaScript para consulta de CEP com retorno em XML ou Json

Funcão SQL para abreviar nomes

Produtividade com NHibernate 2.0