De técnico a rudo – Script para cambiar registros a cadena

No Gravatar

Buenas tardes mis estimados seguidores :D Bueno hemos estado bastante ocupados por acá (El Qbil Felino) y nos hemos dedicado a programar un buen rato, es por esto que les comparto un script que me parece muy útil ya que convierte los resultados de una consulta  a una cadena. ¡Manos a lo obra!

Primero imaginemos que tenemos la siguiente tabla:

CREATE TABLE [dbo].Cliente(
  id [BIGINT] IDENTITY(1,1) NOT NULL,
  nombre [VARCHAR](50) NULL,
  CONSTRAINT [PK_Cliente] PRIMARY KEY CLUSTERED
  (
  [id] ASC
  )
) ON [PRIMARY]

Ahora con los siguientes valores:

INSERT INTO Cliente VALUES('Patito S.A. de C.V.')
INSERT INTO Cliente VALUES('Pollito S.A. de C.V.')
INSERT INTO Cliente VALUES('Vaca S.A. de C.V.')
INSERT INTO Cliente VALUES('Toro S.A. de C.V.')
INSERT INTO Cliente VALUES('Gallo S.A. de C.V.')
INSERT INTO Cliente VALUES('Camaleon S.A. de C.V.')

 

Por último, queremos obtener los nombres de los clientes separados por el caracter punto y coma (;). Para esto utilizamos el siguiente script:

DECLARE @SQL NVARCHAR(1000)
DECLARE @clientes NVARCHAR(1000)
BEGIN
  SET @SQL = N'SET @clientesOUT = ''''
  SELECT @clientesOUT = @clientesOUT + ''; '' + nombre
    FROM Cliente'
 
  EXEC sp_executesql @SQL,
    N'@clientesOUT NVARCHAR(2000) OUTPUT',
    @clientesOUT = @clientes OUTPUT
 
  SET @clientes = RIGHT(@clientes, LEN(@clientes)-2)
  SELECT @clientes
END

 

Ahora queda de ustedes si quieren meter la funcionalidad a una Función o hacer buen uso de ella.

 

 

Analista/Desarrollador de QBit Mexhico. Tecnologias utilizadas Java, .Net, Delphi, Spring, Hibernate, DTSx, Oracle, T-SQL, Firebird, MySQL, Visual Basic. Sistemas Operativos Ubuntu y Windows.

Twitter 

Compartir y Disfrutar

  • Facebook
  • Twitter
  • Delicious
  • Digg
  • StumbleUpon

No hay entradas relacionadas.

Leave a comment


Qbit Mexhico Blog is using WP-Gravatar