miércoles, 27 de enero de 2010

Funcion Split en SQL

En SQL, no existe una función 'Split' como tal, por lo que investigando encontré una que simula hacer un 'Split'.
La idea de hacer un Split es dividir una cadena, la cual deberia ser dividida por un caracter en comun.
Este ejemplo @String recibe la cadena y @Delimiter es la cadena de caracteres utilizados para identificar los límites de las subcadenas.

DECLARE @NextString NVARCHAR(40)
DECLARE @Pos INT
DECLARE @NextPos INT
DECLARE @String NVARCHAR(40)
DECLARE @Delimiter NVARCHAR(40)

SET @String ='SQL,TUTORIALS'
SET @Delimiter = ','
SET @String = @String + @Delimiter
SET @Pos = charindex(@Delimiter,@String)

WHILE (@pos <> 0)
BEGIN
SET @NextString = substring(@String,1,@Pos - 1)
SELECT @NextString -- muestra los resultados
SET @String = substring(@String,@pos+1,len(@String))
SET @pos = charindex(@Delimiter,@String)
END

No hay comentarios:

Publicar un comentario