Es probable que tengamos varios registros pertenecientes a una columna o campo que debamos concatenar y mostrar en una sola cadena. Algo así:
descripcion =========== valor1 valor2 valor3
y necesitamos obtener algo así:
valor1, valor2, valor3
es decir, como si tuvieramos que trasponer la columna, pero sin complicarnos.
La solución es la siguiente:
DECLARE @valores VARCHAR(1000) SELECT @valores= COALESCE(@valores + ', ', '') + descripcion FROM carpetas select @valores as valores
La magia la hace el comando COALESCE que devuelve la expresión que no contenga el valor NULL entre sus argumentos.
OJO: Esta solución es válida solo si ningún renglon es NULL.
justo lo q necesitaba gracias!!! 😀
Gracias, gracias…. busque por mucho lados y en todos estaban procedimientos muy complicados y confusos pero sabia que debia de haber algo mas sencillo he inteligente.
Saludos desde Nicaragua.
excelente, muchas gracias
Excelente, Muchas Gracias
Perfecto! fue de bastante ayuda, muy agradecido.
Muchísimas gracias!!!
Excelente!
He visto muchas formas complicadas (PIVOT y UNPIVOT), ingeniosas (XML PATH y STUFF) de conseguir prácticamente lo mismo y, sinceramente, esta es la más fácil, la más ingeniosa y probablemente la mejor que he visto (y llevo más de 15 años con SQL). Simplemente, tu kung-fu es el mejor.
Saludos!!!
Este código es la ostía! Muy bueno amigo.