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 SQL by registered user vvillacorta ( 4 years ago )
CREATE TABLE d_mdl_vpc_disc.T1_SALDO_MERCADO_RCC
WITH ( format = 'Parquet', 
	   parquet_compression = 'SNAPPY', 
	   partitioned_by = ARRAY['PERIODO'], 
	   external_location= 's3://sagemaker-us-east-1-058528764918/vpc/propension/athena/T1_SALDO_MERCADO_RCC/'
	 )
AS (
SELECT 
	  A.cod_sbs_val AS CODSBS,
	  A.producto_rcc_desc AS PRODUCTO,
	  A.situacion_rcc_desc AS SITUACION,
	  A.empresa_cd AS COD_EMPRESA,
	  CASE WHEN coalesce(A.tipoempresafinanc_desc,'') ='BANCOS' AND coalesce(A.estadoempresafinanc_desc,'') ='EN OPERACION' THEN 'BANCOS' ELSE 'CAJAS & FINANC.' END AS TIPO_ENTIDAD,
	  CASE WHEN coalesce(A.tipoempresafinanc_desc,'') ='BANCOS' AND coalesce(A.estadoempresafinanc_desc,'') ='EN OPERACION' THEN
	  A.nomcortoempresafinanc_desc ELSE 'CAJAS & FINANC.' END AS BANCO,
	  A.tipo_producto_rcc_desc TIPO_PRODUCTO,
	  SUM(coalesce(A.saldo_amt, 0)) MTO_SALDO,
      MAX(coalesce(A.flg_lin_mercado, 'N')) flg_lin_mercado,
	  MAX(coalesce(A.condicion_val, 0)) MAX_DIAS_ATRASO,
      MAX(CASE WHEN coalesce(A.clasificacion_deudor_cd, '8') in ('0', '8') then 1 else 0 END) FLG_TIENE_CLASIF_NORMAL,
      MAX(CASE WHEN coalesce(A.clasificacion_deudor_cd, '8') = '1' then 1 else 0 END) FLG_TIENE_CLASIF_CPP,
      MAX(CASE WHEN coalesce(A.clasificacion_deudor_cd, '8') = '2' then 1 else 0 END) FLG_TIENE_CLASIF_DEFICIENTE,
      MAX(CASE WHEN coalesce(A.clasificacion_deudor_cd, '8') = '3' then 1 else 0 END) FLG_TIENE_CLASIF_DUDOSO,
      MAX(CASE WHEN coalesce(A.clasificacion_deudor_cd, '8') not in ('0','1', '2', '3', '8') then 1 else 0 END) FLG_TIENE_CLASIF_PERDIDA,
      CASE WHEN cod_sbs_val in (select cod_sbs_val from e_perm_aws.t_vpc_segmentacion_merc where banca_fin_val = 'BPE' or banca_mes_val = 'BPE') THEN 1 ELSE 0 END FLG_BPE_TIMELINE,
      CASE WHEN cod_sbs_val in (select cod_sbs_val from e_perm_aws.t_vpc_segmentacion_merc where banca_fin_val = 'BE' or banca_mes_val = 'BE') THEN 1 ELSE 0 END FLG_BE_TIMELINE,
      CASE WHEN cod_sbs_val in (select cod_sbs_val from e_perm_aws.t_vpc_segmentacion_merc where banca_fin_val = 'BC' or banca_mes_val = 'BC') THEN 1 ELSE 0 END FLG_BC_TIMELINE,
      CASE WHEN cod_sbs_val in (select cod_sbs_val from e_perm_aws.t_vpc_segmentacion_merc where banca_fin_val = 'MICRO' or banca_mes_val = 'MICRO') THEN 1 ELSE 0 END FLG_MICRO_TIMELINE,
	  periodo_val AS PERIODO
   FROM e_perm_aws.T_VPC_FACT_SALDOS_RCC A
   LEFT JOIN e_perm_aws.t_dim_vpc_cta_ctble_rcc B
   ON A.Cuenta_RCC_Val = B.Cuenta_Ctble_RCC_Cd
   WHERE 1 = 1
   AND date_parse(cast(periodo_val as varchar),'%Y%m') >= (SELECT date_add('month', -18, date_parse(cast(MAX(periodo_val) as varchar),'%Y%m')) FROM e_perm_aws.T_VPC_FACT_SALDOS_RCC)
   AND A.tipo_producto_rcc_desc IN (
	 'COL. DIRECTAS','REACTIVA','COL. INDIRECTAS','FAE','INMOBILIARIO', 'CREDITOS CASTIGADOS', 'GARANTIA_FAE', 'GARANTIA_REACTIVA', 'GARANTIAS', 'REPROGRAMADOS'
   )
   AND 
   (
	  (
		  A.flg_lin_mercado = 'S' AND
		  (
			A.producto_rcc_desc NOT IN ('OTROS') 
			OR 
			(
			  A.producto_rcc_desc ='OTROS' AND 
			  B.Cuenta_Ctble_RCD_Desc IN ('FINANCIACION DE PROYECTOS')
			)
		  )
	  )					
	  OR A.tipo_producto_rcc_desc IN ('REACTIVA','FAE','INMOBILIARIO', 'CREDITOS CASTIGADOS', 'GARANTIA_FAE', 'GARANTIA_REACTIVA', 'GARANTIAS', 'REPROGRAMADOS')
  )
  GROUP BY 
	  A.periodo_val,
	  A.cod_sbs_val,
	  A.producto_rcc_desc,
	  A.situacion_rcc_desc,
	  A.empresa_cd,
	  CASE WHEN coalesce(A.tipoempresafinanc_desc,'') ='BANCOS' AND coalesce(A.estadoempresafinanc_desc,'') ='EN OPERACION' THEN 'BANCOS' ELSE 'CAJAS & FINANC.' END,
	  CASE WHEN coalesce(A.tipoempresafinanc_desc,'') ='BANCOS' AND coalesce(A.estadoempresafinanc_desc,'') ='EN OPERACION' THEN
	  A.nomcortoempresafinanc_desc ELSE 'CAJAS & FINANC.' END,
	  A.tipo_producto_rcc_desc
  
)

 

Revise this Paste

Your Name: Code Language: