Concatenar valores de una columna en SQL Server.

begin
	--Tabla temporal que se crea y llena para simular una tabla de la base de datos.
	declare @TablaOrigen table(Id int, Color varchar(10));

	insert into @TablaOrigen(Id,Color) values(1,'Azul');
	insert into @TablaOrigen(Id,Color) values(2,'Purpura');
	insert into @TablaOrigen(Id,Color) values(3,'Negro');
	insert into @TablaOrigen(Id,Color) values(4,'Cafe');
	insert into @TablaOrigen(Id,Color) values(5,'Violeta');
	insert into @TablaOrigen(Id,Color) values(6,'Naranja');
	insert into @TablaOrigen(Id,Color) values(7,'Rojo');
	insert into @TablaOrigen(Id,Color) values(8,'Verde');
	insert into @TablaOrigen(Id,Color) values(9,'Cian');
	insert into @TablaOrigen(Id,Color) values(10,'Amarillo');

	--Variables utilizadas para la concatenación.
	declare @TablaTemporal table(Elemento varchar(10));
	declare @TotalElementos int=0;
	declare @Elemento varchar(10)='';
	declare @Resultado varchar(max)='';
	declare @EsPrimerElemento bit=1;

	--Se inserta en la tabla temporal '@TablaTemporal' todos los elementos de la tabla origen '@TablaOrigen'.
	insert into @TablaTemporal(Elemento) select Color from @TablaOrigen;

	--Se asigna a la variable '@TotalElementos' el número total de registros almacenados en la tabla temporal '@TablaTemoral'.
	set @TotalElementos= (select count(Elemento) from @TablaTemporal);

	--Se recorre la tabla temporal '@TotalElementos' con el fin de ir concatenando cada uno de sus valores en la variable '@Resultado'.
	while @TotalElementos > 0
		begin				
			set @Elemento= (select top 1 Elemento from @TablaTemporal);

			if(@EsPrimerElemento=1)
				begin
					set @Resultado= @Elemento;
					set @EsPrimerElemento=0;		
				end
			else
				begin
					set @Resultado= concat(@Resultado,',',@Elemento);
				end

			delete top(1) from @TablaTemporal;

			set @TotalElementos= @TotalElementos - 1;
		end

		--Se lleva a cabo la selección de la variable '@Resultado' para visualizar el resultado del proceso de la concatenación.
		select @Resultado as 'Resultado';
end

 Resultado:

Importancia de la información en la actualidad.

En el entorno empresarial la información es poder, por lo cual el excelente manejo e interpretación de esta para tomar decisiones es de vital importancia, ya que la toma de una buena decisión es un paso al éxito y en contraparte una mala decisión podría llevar al fracaso. 

Hoy en día es posible utilizar una gama de tecnologías para apoyo a la toma de decisiones, lo cual constituye una ventaja competitiva importante para lograr el éxito empresarial.

Niveles de uso de información en una empresa.

Dentro de la estructura de niveles de información podemos hacer la siguiente clasificación:

 

GuiaPostgreSQL

Sistemas de procesamiento de transacciones en línea (OLTP)

Son sistemas operacionales que capturan las transacciones de un negocio y las almacenan en estructuras relacionadas llamadas bases de datos. 

Dentro sus características se pueden mencionar las siguientes:

  • realizan transacciones en tiempo real del proceso de un negocio
  • son los responsables del mantenimiento de los datos, ya sea agregando datos, realizando actualizaciones o bien eliminándolos
  • las estructuras de datos deben de estar optimizadas para validar la entrada de los mismos, y rechazarlos si no cumplen con determinadas reglas del negocio
  • capacidades muy limitadas para la toma de decisiones
  • su diseño está definido en un diagrama entidad-relación
  • las organizaciones que utilizan este tipo de sistemas se ven en la necesidad de registrar las transacciones que ocurren durante sus procesos operacionales, para su control y posterior consulta. 

Los sistemas OLTP son comúnmente utilizados en:

  • Sistemas bancarios
  • Procesamiento de pedidos
  • Comercio electrónico
  • Sistemas de facturación
  • Sistemas de stock 

Sistemas de procesamiento analítico en línea (OLAP)

Proporcionan una alternativa a los sistemas transaccionales, ofreciendo una visión de los datos orientada hacia el análisis y una rápida y flexible navegación por estos. 

Los sistemas OLAP son una solución que devuelve rápidas respuestas a las consultas que le son realizadas y dentro de sus características podemos encontrar las siguientes:

  • las bases de datos tienen un esquema que está optimizado
  • permite un uso interactivo con los usuarios
  • los cubos almacenan varios niveles de datos conformados por estructuras altamente optimizadas
  • están  preparado para realizar informes complejos de una manera simple
  • proporciona una vista de datos multidimensional
  • los usuarios pueden cambiar fácilmente las filas, las columnas, y las páginas en informes.

Este tipo de sistemas son utilizados por las empresas para conocer la historia del negocio y poder realizar la toma de decisiones. Podemos enunciar entonces las siguientes áreas en donde el uso de un sistema OLAP está difundido:

  • sistemas de información ejecutivos
  • alerta
  • toma de decisiones
  • aplicaciones financieras
  • reportes analíticos
  • análisis
  • planeamiento
  • ventas y aplicaciones  de marketing
  • análisis de productos
  • análisis de clientes
  • análisis de facturación
  • otros usos 
  • análisis de la producción
  • análisis de servicios al cliente
  • evolución del costo del producto