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'))
)
Add a code snippet to your website: www.paste.org