DROP TABLE IF EXISTS .......................T_PRESTAMO_CLIENTE_ENTIDAD_HIST

CREATE TABLE .......................T_PRESTAMO_CLIENTE_ENTIDAD_HIST
WITH ( format = 'Parquet', 
       parquet_compression = 'SNAPPY', 
       partitioned_by = ARRAY['PERIODO'], 
       external_location= 's3://................................/T_PRESTAMO_CLIENTE_ENTIDAD_HIST/'
     )
AS (

SELECT CODSBS, 
       COD_EMPRESA,
  SALDO_AJUSTADO,
  (coalesce(SALDO_AJUSTADO, 0) + coalesce(SALDO_AJUSTADO_P1, 0)  +  coalesce(SALDO_AJUSTADO_P2, 0))/ 3  SALDO_AJUSTADO_PROMEDIO_U3M,
  (coalesce(SALDO_AJUSTADO, 0) + coalesce(SALDO_AJUSTADO_P1, 0)  +  coalesce(SALDO_AJUSTADO_P2, 0) +  coalesce(SALDO_AJUSTADO_P3, 0) +  coalesce(SALDO_AJUSTADO_P4, 0) +  coalesce(SALDO_AJUSTADO_P5, 0))/ 6  SALDO_AJUSTADO_PROMEDIO_U6M,
  (coalesce(SALDO_AJUSTADO, 0) + coalesce(SALDO_AJUSTADO_P1, 0)  +  coalesce(SALDO_AJUSTADO_P2, 0) +  coalesce(SALDO_AJUSTADO_P3, 0) +  coalesce(SALDO_AJUSTADO_P4, 0) + coalesce(SALDO_AJUSTADO_P5, 0) + coalesce(SALDO_AJUSTADO_P6, 0) + coalesce(SALDO_AJUSTADO_P7, 0) + coalesce(SALDO_AJUSTADO_P8, 0))/ 9  SALDO_AJUSTADO_PROMEDIO_U9M,
  
  FLG_TIENE_9_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_8_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_7_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_6_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_5_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_4_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_3_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_2_MESES_O_MAS_CON_SALDO_AJUSTADO,
  FLG_TIENE_1_MESES_O_MAS_CON_SALDO_AJUSTADO,
  
  FLG_NO_TIENE_SALDO_AJUSTADO_U9M,
  FLG_NO_TIENE_SALDO_AJUSTADO_U6M,
  FLG_NO_TIENE_SALDO_AJUSTADO_U3M,
  
  FLG_TERMINO_PRESTAMO_U9M,
  FLG_TERMINO_PRESTAMO_U6M,
  FLG_TERMINO_PRESTAMO_U3M,
  
  FLG_RECIEN_3_MESES_CON_SALDO_AJUSTADO_U9M,
  FLG_RECIEN_2_MESES_CON_SALDO_AJUSTADO_U9M,
  FLG_RECIEN_1_MES_CON_SALDO_AJUSTADO_U9M,
  FLG_RECIEN_3_MESES_CON_SALDO_AJUSTADO_U6M,
  FLG_RECIEN_2_MESES_CON_SALDO_AJUSTADO_U6M,
  FLG_RECIEN_1_MES_CON_SALDO_AJUSTADO_U6M,
  
  ULTIMA_VARIACION_SALDO_AJUSTADO,
  coalesce(ULTIMA_VARIACION_SALDO_AJUSTADO, 0) +  coalesce(VARIACION_SALDO_AJUSTADO_P1M, 0) + coalesce(VARIACION_SALDO_AJUSTADO_P2M, 0)  VARIACION_NETA_SALDO_AJUSTADO_U3M,
  coalesce(ULTIMA_VARIACION_SALDO_AJUSTADO, 0) +  coalesce(VARIACION_SALDO_AJUSTADO_P1M, 0) + coalesce(VARIACION_SALDO_AJUSTADO_P2M, 0) + coalesce(VARIACION_SALDO_AJUSTADO_P3M, 0) + coalesce(VARIACION_SALDO_AJUSTADO_P4M, 0) + coalesce(VARIACION_SALDO_AJUSTADO_P5M, 0) VARIACION_NETA_SALDO_AJUSTADO_U6M,
  
  MONTO_VARIACION_POSITIVA_ULT_RCC MONTO_ADQUIRIDO_ULT_RCC,    
  coalesce(MONTO_VARIACION_POSITIVA_ULT_RCC, 0) +  coalesce(MONTO_VARIACION_POSITIVA_P1M, 0) + coalesce(MONTO_VARIACION_POSITIVA_P2M, 0)  MONTO_ADQUIRIDO_U3M,
  coalesce(MONTO_VARIACION_POSITIVA_ULT_RCC, 0) +  coalesce(MONTO_VARIACION_POSITIVA_P1M, 0) + coalesce(MONTO_VARIACION_POSITIVA_P2M, 0) + coalesce(MONTO_VARIACION_POSITIVA_P3M, 0) + coalesce(MONTO_VARIACION_POSITIVA_P4M, 0) + coalesce(MONTO_VARIACION_POSITIVA_P5M, 0) MONTO_ADQUIRIDO_U6M, 
  
  MONTO_VARIACION_NEGATIVA_ULT_RCC MONTO_PAGADO_ULT_RCC,
  coalesce(MONTO_VARIACION_NEGATIVA_ULT_RCC, 0) +  coalesce(MONTO_VARIACION_NEGATIVA_P1M, 0) + coalesce(MONTO_VARIACION_NEGATIVA_P2M, 0)  MONTO_PAGADO_U3M,
  coalesce(MONTO_VARIACION_NEGATIVA_ULT_RCC, 0) +  coalesce(MONTO_VARIACION_NEGATIVA_P1M, 0) + coalesce(MONTO_VARIACION_NEGATIVA_P2M, 0) + coalesce(MONTO_VARIACION_NEGATIVA_P3M, 0) + coalesce(MONTO_VARIACION_NEGATIVA_P4M, 0) + coalesce(MONTO_VARIACION_NEGATIVA_P5M, 0) MONTO_PAGADO_U6M,
  
  CASE WHEN (coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) >= 10000 AND coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) <= 180000) OR (coalesce(VARIACION_SALDO_AJUSTADO_F3M, 0) >= 10000 AND coalesce(VARIACION_SALDO_AJUSTADO_F3M, 0) <= 180000) THEN 1 ELSE 0 END FLG_TIENE_DESEMBOLSO_F2M_F3M_MAYOR_10_MENOR_180,
    CASE WHEN (coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) >= 30000 AND coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) <= 180000) OR (coalesce(VARIACION_SALDO_AJUSTADO_F3M, 0) >= 30000 AND coalesce(VARIACION_SALDO_AJUSTADO_F3M, 0) <= 180000) THEN 1 ELSE 0 END FLG_TIENE_DESEMBOLSO_F2M_F3M_MAYOR_30_MENOR_180,
  
  CASE WHEN coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) >= 10000 AND coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) <= 180000 THEN 1 ELSE 0 END FLG_TIENE_DESEMBOLSO_F2M_MAYOR_10_MENOR_180,
  CASE WHEN coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) >= 30000 AND coalesce(VARIACION_SALDO_AJUSTADO_F2M, 0) <= 180000 THEN 1 ELSE 0 END FLG_TIENE_DESEMBOLSO_F2M_MAYOR_30_MENOR_180,
  PERIODO
    
FROM .......................T_SALDO_AJUSTADO_HIST
WHERE PERIODO >= &#039;202008&#039;
  
  
)

Add a code snippet to your website: www.paste.org