Convertir filas en columnas y columnas en filas en SQL Server

sql server

23/06/2015

Ingeniero Técnico en Informática por la Universidad de Granada. C.A.P. por la Universidad de Granada. Formador de Formadores y Formador de Formadores Especialidad Tele formación. Microsoft Certified Solution Developer en Visual Studio .NET. Certificado en CISCO, Oracle y Linux. Profesor en el departamento de Nuevas tecnologías de INESEM.

5+

Ver más artículos relacionados de Desarrollo de Aplicaciones , pivot, referencias cruzadas, SQL Server, unpivot .

SUSCRÍBETE A ESTE CANAL

17 Comentarios

  1. Rocio dice:

    En el ejemplo donde se realiza el pivot que agrupa los años y suma lo de cada año

    ¿como le puedo hacer para sumar todos los años de cada país?

    0

    • Víctor Manuel Acosta Víctor Manuel Acosta dice:

      Para eso con utilizar SQL estándar sería suficiente:
      SELECT country,
      SUM (SalesAmount)
      FROM [dbo].[PivotExample]
      GROUP BY country;

      1+

  2. Luis Enrique dice:

    Y SI NO Quiero Agregacion como puedo usar Pivot, CUANDO TENGO PROFESIONES en dos filas

    0

  3. xzasdaasd dice:

    hola onde agrego los WHERE ?por ejemplo si quiero filtrar 

    0

  4. claudia lc dice:

    Buen día para crear un pivot dinámico (no tengo la información del campo constante)  o algún otro método

    0

  5. Estrella Hdz dice:

    a mi me funcionó esto cuando tengo x cantidad de años declare @columnas varchar(max)set @columnas = ”select @columnas = coalesce(@columnas + ‘[‘ + cast(Year as varchar(12)) + ‘],’, ”) FROM (select distinct Year from AñoPivot2) as DTMset @columnas = left(@columnas,LEN(@columnas)-1)DECLARE @SQLString nvarchar(500);set @SQLString = N’    SELECT *    FROM     (SELECT Year, IdKPI,value        FROM AñoPivot2) AS SourceTable    PIVOT    (    sum(value)    FOR Year IN (‘ + @columnas + ‘)    ) AS PivotTable;’EXECUTE sp_executesql @SQLString

    0

Ver más comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.