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 |
Hola Daniel,
ResponderEliminarAunque tu ejemplo es didactico para mostrar el uso de cursores, deberias tambien mostrar la manera de hacer lo mismo sin cursores, que es lo mas recomendable y mas rapido.
Salu2
Victor Bocanegra
Daniel. Sou brasileira, historiadora, ministro aulas no ensino médio de uma escola pública. Estava pesquisando sobre tecnologia de informação e procurava informações sobre a Jalasoft, tal é a sua importância em toda a América Latina, e encontrei esse blog. Achei extremamente interessante a maneira como você desenvolve os textos e ensina.
ResponderEliminarMuito obrigado.
ResponderEliminarvocê tem dúvidas?