Anuncios

IT Certification Category (Spanish)468x60

domingo, 8 de mayo de 2011

Mas ejemplos de cursores


Este ejemplo concatena valores de diferentes filas en una.
Estoy usando cursores de SQL Server para dicho fin. Para más ejemplos sobre cursores haga click AQUÍ
Mi tabla se llama colores.
Con la siguiente estructura:



CREATE TABLE [dbo].[colores](
     [color] [nchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]


Y los siguientes datos:

rojo      
amarillo  
verde     
azul    

Ahora, lo que voy a hacer es que me muestren las columnas concatenadas. Para eso necesito un cursor. El cursor es una forma de ir fila por fila para unir luego datos:


--Declarar cursor
DECLARE color_Cursor CURSOR FOR
SELECT color
FROM dbo.colores
OPEN color_Cursor
--Declarar color y la variable que almacena todos los cursores
DECLARE @color varchar(30)
DECLARE @todoscolores varchar(300)
set @todoscolores=''

FETCH NEXT FROM color_Cursor into @color
WHILE @@FETCH_STATUS <> -1
BEGIN
set @todoscolores=@todoscolores+@color

FETCH NEXT FROM color_Cursor into @color

END
select @todoscolores as Colores
--Cerrar cursores
CLOSE color_Cursor
DEALLOCATE color_Cursor
GO

El resultado final son los colores concatenados.
rojo      amarillo  verde     azul   


   





People who read this post also read :