none
Separar registros en columnas con sumatoria de los valores de cada registro. RRS feed

  • Pregunta

  • Buenas a todos, tengo la siguiente consulta, lo cual me arroja el resultado en la tabla que muestro. Lo que busco es lo que muestro a la derecha de la flecha. Los registros separados en forma de columnas con su respectiva sumatoria tomados de cada uno de los registros. Gracias 

    SELECT        POLIZAS_DETALLE.ID_POLIZA, POLIZAS_DETALLE.EJERCICIO, POLIZAS_DETALLE.PERIODO,                         POLIZAS_MOVIMIENTO.CARGO, dbo.POLIZAS_MOVIMIENTO.ABONO, 
     POLIZAS_MOVIMIENTO.ID_CUENTA_ORDEN_PRESUPUESTAL
    FROM    POLIZAS_DETALLE CROSS JOIN POLIZAS_MOVIMIENTO

    jueves, 12 de julio de 2018 23:37

Todas las respuestas

  • Se puede hacer con la instruccion pivot pero para tu caso se ve muy claro así

    SELECT POLIZAS_MOVIMIENTO.ID_CUENTA_ORDEN_PRESUPUESTAL,
           SUM(CASE
                   WHEN periodo = 0
                   THEN cargo
                   ELSE 0
               END) CargosPeriodo0,
           SUM(CASE
                   WHEN periodo = 0
                   THEN Abono
                   ELSE 0
               END) abonosperiodo0,
           SUM(CASE
                   WHEN periodo = 1
                   THEN cargo
                   ELSE 0
               END) CargosPeriodo1,
           SUM(CASE
                   WHEN periodo = 1
                   THEN Abono
                   ELSE 0
               END) abonosperiodo1
    FROM POLIZAS_DETALLE
         CROSS JOIN POLIZAS_MOVIMIENTO
    GROUP BY POLIZAS_MOVIMIENTO.ID_CUENTA_ORDEN_PRESUPUESTAL;

    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    viernes, 13 de julio de 2018 6:23
    Moderador