Separar Cadena por comas en SQL Server
DECLARE @lstCadena varchar(700)
DECLARE @lstDato varchar(7)
DECLARE @lnuPosComa int
SET @lstCadena ='upao,universidad, privada,la mejor' --Cadena de Ejemplo.
WHILE LEN(@lstCadena)> 0
BEGIN
SET @lnuPosComa = CHARINDEX(',', @lstCadena ) -- Buscamos el caracter separador
IF ( @lnuPosComa=0 )
BEGIN
SET @lstDato = @lstCadena
SET @lstCadena = ''
END
ELSE
BEGIN
SET @lstDato = Substring( @lstCadena , 1 , @lnuPosComa-1)
SET @lstCadena = Substring( @lstCadena , @lnuPosComa + 1 , LEN(@lstCadena))
END
PRINT 'Dato: ' + ltrim(rtrim(@lstDato ))
END
esta muy bien si separa la cadena de caracteres pero la devuelve imcompleta