Documente Academic
Documente Profesional
Documente Cultură
Ejemplo 1:
En este ejemplo los datos de la tabla #Ingresos se hace pivotar de modo que el curso se convierte en
los encabezados de columna.
Script Pivot sobre la tabla #Ingresos, donde los distintos valores del campo Curso son transformados
en columnas.
SELECT * FROM #Ingresos
PIVOT(SUM(Ganancias)
FOR Curso IN ([.NET], Java)) AS PVT
Ejemplo 2:
En este ejemplo los datos de tabla #Ingresos se hace pivotar de modo que el ao se convierte en los
encabezados de columna.
Tabla Temporal #Ingresos
PIVOT sobre columna Ao Resultado del PIVOT con el
campo Ao como columnas
SELECT *
FROM #Ingresos
PIVOT (SUM(Ganancias)
FOR Ao IN
([2014],[2015])) AS
PVT
Ejemplo 3:
La transformacin de los datos de la tabla de Ventas con una publicacin trimestral los datos de
ventas agregadas con Trimestre (Quarters) como las columnas del conjunto de resultados.
SELECT *
FROM (
SELECT YEAR(FechaVta) AS Ao, DATENAME(Month, FechaVta) AS Mes,
COUNT(*) AS NroVentas FROM #Ventas
GROUP BY YEAR(FechaVta), DATENAME(Month, FechaVta)
) As SCR
PIVOT(SUM(NroVentas)
FOR Mes IN (Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,
Septiembre,Octubre,Noviembre,Diciembre)) AS PVT
PIVOT DINAMICOS
A los anteriores ejemplos se le aplico PIVOT esttico. Es decir los nombres de las
columnas en el PIVOT se han asignado mediante nombres estticos. Ahora vamos a ver
cmo podramos crear PIVOT con nombres de columnas generados dinmicamente.
Tambin se puede haber generado las columnas del PIVOT del siguiente modo:
Ref: http://sqlhints.com/2014/03/18/dynamic-pivot-in-sql-server/