Artigo extraído do site: www.codigofonte.com.br
Slipt no SQL Server
Código que deve ser utilizado em uma Procedure no SQL Server para que ele gere um tipo de "SPLIT".
É necessário colocar a string na variável @ARRAY, e o delimitador utilizado na variável @DELIMITADOR; funciona exatamente como o "SPLIT", a diferença é que aqui neste código é gerada uma Tabela Temporária simulando o Array.
O nome da tabela é #ARRAY.
1.SET NOCOUNT ON
2.
3.DECLARE @ARRAY VARCHAR(8000), @DELIMITADOR VARCHAR(100), @S VARCHAR(8000)
4.
5.-- VALORES PASSADOS PARA A VARIAVEL @ARRAY
6.SELECT @ARRAY = "OLA ,TUDO BEM, MAIS OU MENOS, TRANQUILIS"
7.-- SETANDO O DELIMITADOR
8.SELECT @DELIMITADOR = ","
9.
10.IF LEN(@ARRAY) > 0 SET @ARRAY = @ARRAY + @DELIMITADOR
11.CREATE TABLE #ARRAY(ITEM_ARRAY VARCHAR(8000))
12.
13.WHILE LEN(@ARRAY) > 0
14.BEGIN
15.SELECT @S = LTRIM(SUBSTRING(@ARRAY, 1, CHARINDEX(@DELIMITADOR, @ARRAY) - 1))
16.INSERT INTO #ARRAY (ITEM_ARRAY) VALUES (@S)
17.SELECT @ARRAY = SUBSTRING(@ARRAY, CHARINDEX(@DELIMITADOR, @ARRAY) + 1, LEN(@ARRAY))
18.END
19.
20.-- MOSTRANDO O RESULTADO JÁ POPULADO NA TABELA TEMPORÁRIA
21.SELECT * FROM #ARRAY
22.DROP TABLE #ARRAY
23.
24.SET NOCOUNT OFF