Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so dont bother with any of their useless mail servers here and just use oauth login instead. Thank the nice Russians for causing that. :)

Paste

Pasted as Plain Text by registered user vvillacorta ( 5 years ago )
DROP TABLE IF EXISTS ......................T_SALDO_AJUSTADO_HIST

CREATE TABLE ......................T_SALDO_AJUSTADO_HIST
WITH ( format = 'Parquet', 
       parquet_compression = 'SNAPPY', 
       partitioned_by = ARRAY['PERIODO'], 
       external_location= 's3://......................................./T_SALDO_AJUSTADO_HIST/'
     )
AS (
  
          SELECT A.CODSBS, 
               A.COD_EMPRESA,         
                  A.SALDO_AJUSTADO SALDO_AJUSTADO,
               FUTURO_1.PERIODO PERIODO_F1,
               FUTURO_1.SALDO_AJUSTADO SALDO_AJUSTADO_F1,
               FUTURO_2.PERIODO PERIODO_F2,
               FUTURO_2.SALDO_AJUSTADO SALDO_AJUSTADO_F2,
               FUTURO_3.PERIODO PERIODO_F3,
               FUTURO_3.SALDO_AJUSTADO SALDO_AJUSTADO_F3,
               PASADO_1.PERIODO PERIODO_P1,
               PASADO_1.SALDO_AJUSTADO SALDO_AJUSTADO_P1,
                PASADO_2.PERIODO PERIODO_P2,
               PASADO_2.SALDO_AJUSTADO SALDO_AJUSTADO_P2,
                PASADO_3.PERIODO PERIODO_P3,
               PASADO_3.SALDO_AJUSTADO SALDO_AJUSTADO_P3,
                PASADO_4.PERIODO PERIODO_P4,
               PASADO_4.SALDO_AJUSTADO SALDO_AJUSTADO_P4,
                PASADO_5.PERIODO PERIODO_P5,
               PASADO_5.SALDO_AJUSTADO SALDO_AJUSTADO_P5,
                PASADO_6.PERIODO PERIODO_P6,
               PASADO_6.SALDO_AJUSTADO SALDO_AJUSTADO_P6,
                PASADO_7.PERIODO PERIODO_P7,
               PASADO_7.SALDO_AJUSTADO SALDO_AJUSTADO_P7,
                PASADO_8.PERIODO PERIODO_P8,
               PASADO_8.SALDO_AJUSTADO SALDO_AJUSTADO_P8,
  
               CASE WHEN coalesce(PASADO_8.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_9_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_8_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_7_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_6_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_5_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_4_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_3_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0 AND coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_2_MESES_O_MAS_CON_SALDO_AJUSTADO,
               CASE WHEN coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_1_MESES_O_MAS_CON_SALDO_AJUSTADO,
  
               CASE WHEN coalesce(PASADO_8.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_7.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_6.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_NO_TIENE_SALDO_AJUSTADO_U9M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_NO_TIENE_SALDO_AJUSTADO_U6M,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_NO_TIENE_SALDO_AJUSTADO_U3M,
               
  
               CASE WHEN (coalesce(PASADO_8.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_7.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_6.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_5.SALDO_AJUSTADO, 0) > 0 OR
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_3.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0)
                         AND coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_TERMINO_PRESTAMO_U9M,
               CASE WHEN (coalesce(PASADO_5.SALDO_AJUSTADO, 0) > 0 OR
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_3.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0)
                         AND coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_TERMINO_PRESTAMO_U6M,
               CASE WHEN (coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 OR coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0)
                         AND coalesce(A.SALDO_AJUSTADO, 0) = 0 THEN 1 ELSE 0 END FLG_TERMINO_PRESTAMO_U3M,
               
               CASE WHEN coalesce(PASADO_8.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_7.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_6.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_3_MESES_CON_SALDO_AJUSTADO_U9M,
               CASE WHEN coalesce(PASADO_8.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_7.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_6.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_2_MESES_CON_SALDO_AJUSTADO_U9M,
               CASE WHEN coalesce(PASADO_8.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_7.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_6.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_1_MES_CON_SALDO_AJUSTADO_U9M,
  
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_3_MESES_CON_SALDO_AJUSTADO_U6M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_2_MESES_CON_SALDO_AJUSTADO_U6M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(PASADO_4.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_3.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_2.SALDO_AJUSTADO, 0) = 0 AND coalesce(PASADO_1.SALDO_AJUSTADO, 0) = 0 AND
                         coalesce(A.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_RECIEN_1_MES_CON_SALDO_AJUSTADO_U6M,
  
               coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) ULTIMA_VARIACION_SALDO_AJUSTADO,
               coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P1M,
               coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P2M,
               coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P3M,
               coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P4M,
               coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P5M,
               coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P6M,
               coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_P7M,
               coalesce(FUTURO_1.SALDO_AJUSTADO, 0) - coalesce(A.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_F1M,
               coalesce(FUTURO_2.SALDO_AJUSTADO, 0) - coalesce(FUTURO_1.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_F2M,
               coalesce(FUTURO_3.SALDO_AJUSTADO, 0) - coalesce(FUTURO_2.SALDO_AJUSTADO, 0) VARIACION_SALDO_AJUSTADO_F3M,
            
               CASE WHEN coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0 THEN coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_ULT_RCC,
               CASE WHEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P1M,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P2M,
               CASE WHEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P3M,
               CASE WHEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P4M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P5M,
               CASE WHEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P6M,
               CASE WHEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) > 0 THEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) ELSE 0 END MONTO_VARIACION_POSITIVA_P7M,
                                                                                                                                                              
               CASE WHEN coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE abs(coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0)) END MONTO_VARIACION_NEGATIVA_ULT_RCC,
               CASE WHEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P1M,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P2M,
               CASE WHEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P3M,
               CASE WHEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P4M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P5M,
               CASE WHEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P6M,
               CASE WHEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) < 0 THEN abs(coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0)) ELSE 0 END MONTO_VARIACION_NEGATIVA_P7M,                                                                                                                                                                                             
               CASE WHEN coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_ULT_RCC,
               CASE WHEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P1M,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P2M,
               CASE WHEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P3M,
               CASE WHEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P4M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P5M,
               CASE WHEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P6M,
               CASE WHEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) > 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_POSITIVA_P7M,
               
               CASE WHEN coalesce(A.SALDO_AJUSTADO, 0) - coalesce(PASADO_1.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_ULT_RCC,
               CASE WHEN coalesce(PASADO_1.SALDO_AJUSTADO, 0) - coalesce(PASADO_2.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P1M,
               CASE WHEN coalesce(PASADO_2.SALDO_AJUSTADO, 0) - coalesce(PASADO_3.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P2M,
               CASE WHEN coalesce(PASADO_3.SALDO_AJUSTADO, 0) - coalesce(PASADO_4.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P3M,
               CASE WHEN coalesce(PASADO_4.SALDO_AJUSTADO, 0) - coalesce(PASADO_5.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P4M,
               CASE WHEN coalesce(PASADO_5.SALDO_AJUSTADO, 0) - coalesce(PASADO_6.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P5M,
               CASE WHEN coalesce(PASADO_6.SALDO_AJUSTADO, 0) - coalesce(PASADO_7.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P6M,
               CASE WHEN coalesce(PASADO_7.SALDO_AJUSTADO, 0) - coalesce(PASADO_8.SALDO_AJUSTADO, 0) < 0 THEN 1 ELSE 0 END FLG_TIENE_VARIACION_NEGATIVA_P7M,
                  
               A.PERIODO
          FROM ......................T_MERCADO_BPE_ADQ_SF_P04 A
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 FUTURO_1
        ON A.CODSBS = FUTURO_1.CODSBS AND A.COD_EMPRESA = FUTURO_1.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', -1, date_parse(cast(FUTURO_1.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 FUTURO_2
        ON A.CODSBS = FUTURO_2.CODSBS AND A.COD_EMPRESA = FUTURO_2.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', -2, date_parse(cast(FUTURO_2.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 FUTURO_3
        ON A.CODSBS = FUTURO_3.CODSBS AND A.COD_EMPRESA = FUTURO_3.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', -3, date_parse(cast(FUTURO_3.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_1
        ON A.CODSBS = PASADO_1.CODSBS AND A.COD_EMPRESA = PASADO_1.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +1, date_parse(cast(PASADO_1.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_2
        ON A.CODSBS = PASADO_2.CODSBS AND A.COD_EMPRESA = PASADO_2.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +2, date_parse(cast(PASADO_2.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_3
        ON A.CODSBS = PASADO_3.CODSBS AND A.COD_EMPRESA = PASADO_3.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +3, date_parse(cast(PASADO_3.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_4
        ON A.CODSBS = PASADO_4.CODSBS AND A.COD_EMPRESA = PASADO_4.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +4, date_parse(cast(PASADO_4.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_5
        ON A.CODSBS = PASADO_5.CODSBS AND A.COD_EMPRESA = PASADO_5.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +5, date_parse(cast(PASADO_5.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_6
        ON A.CODSBS = PASADO_6.CODSBS AND A.COD_EMPRESA = PASADO_6.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +6, date_parse(cast(PASADO_6.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_7
        ON A.CODSBS = PASADO_7.CODSBS AND A.COD_EMPRESA = PASADO_7.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +7, date_parse(cast(PASADO_7.PERIODO as varchar),'%Y%m'))
        LEFT JOIN ......................T_MERCADO_BPE_ADQ_SF_P04 PASADO_8
        ON A.CODSBS = PASADO_8.CODSBS AND A.COD_EMPRESA = PASADO_8.COD_EMPRESA AND date_parse(cast(A.PERIODO as varchar),'%Y%m') = date_add('month', +8, date_parse(cast(PASADO_8.PERIODO as varchar),'%Y%m'))

)

 

Revise this Paste

Your Name: Code Language: