Psst.. new poll here.
[email protected] web/email now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!
Paste
Pasted as SQL by registered user vvillacorta ( 2 years ago )
---------------------------------------------------------------------------------------
------------------------------------------------------------------- COLOCACION NETA SDA
---------------------------------------------------------------------------------------
DROP TABLE IF EXISTS d_mdl_vpc_disc.STAGE_HM_COLNETA_DIARIO
CREATE TABLE d_mdl_vpc_disc.STAGE_HM_COLNETA_DIARIO
WITH ( format = 'Parquet',
parquet_compression = 'SNAPPY',
partitioned_by = ARRAY['p_periodo'],
external_location= 's3://sagemaker-us-east-1-058528764918/vpc/contactabilidad/athena_2/STAGE_HM_COLNETA_DIARIO/'
)
AS (
SELECT CASE WHEN periodo_desembolso > periodo_solicitud THEN date_add('day', -1, date_add('month', +1, CAST(CONCAT(substr(cast(fecha_solicitud_dt as varchar), 1, 7), '-01') AS DATE))) ELSE fecha_desemb_dt END fecha_seguimiento_desembolso_dt,
CASE WHEN periodo_desembolso > periodo_solicitud THEN 1 ELSE 0 END flg_desembolso_posterior_a_campania,
date_add('day', -1, date_add('month', +1, CAST(CONCAT(substr(cast(fecha_solicitud_dt as varchar), 1, 7), '-01') AS DATE))) ultimo_dia_mes_solicitud,
CAST(split_part(CAST(fecha_desemb_dt - fecha_solicitud_dt as varchar),' ',1) AS INT) demora_desembolso,
BB.*
FROM (
SELECT numero_documento_val,
CASE WHEN tipo_colocacion in ('1. Campaña Nuevos') THEN 'NUEVOS PRE'
WHEN tipo_colocacion in ( '103.Ecosistemas', '5. Campaña Express', '4. EN – Express') THEN 'NUEVOS AP'
WHEN campana_val like '%Nuevos Pre%' OR campana_val like '%Nvo Pre%' OR campana_val like '%NvoPre%' THEN 'NUEVOS PRE'
WHEN campana_val like '%Nuevos Apr%' OR campana_val like '%NVO APR%' OR campana_val like '%NvoApr%' THEN 'NUEVOS AP'
WHEN flg_rectificado_nuevos_ap = 1 THEN 'NUEVOS AP'
WHEN flg_rectificado_nuevos_pre = 1 THEN 'NUEVOS PRE'
ELSE 'X' END campania,
min(fecha_desemb_dt) fecha_desemb_dt,
min(fecha_solicitud_dt) fecha_solicitud_dt,
substr(replace(cast(fecha_desemb_dt as varchar), '-', ''), 1, 6) periodo_desembolso,
substr(replace(cast(fecha_solicitud_dt as varchar), '-', ''), 1, 6) periodo_solicitud,
max(CASE WHEN colocacion_neta > 0 then 1 else 0 end) flg_desembolso,
max(
CASE WHEN tipo_colocacion in ('1. Campaña Nuevos', '103.Ecosistemas', '5. Campaña Express', '4. EN – Express') THEN 1
WHEN campana_val like '%RECURRENTE%' THEN 0
WHEN campana_val like '%Nuevos Pre%' OR campana_val like '%Nvo Pre%' OR campana_val like '%NvoPre%' THEN 1
WHEN campana_val like '%Nuevos Apr%' OR campana_val like '%NVO APR%' OR campana_val like '%NvoApr%' THEN 1
WHEN flg_rectificado_nuevos_ap = 1 THEN 1
WHEN flg_rectificado_nuevos_pre = 1 THEN 1
ELSE 0 END
) flg_desembolso_nuevos,
sum(colocacion_neta) colocacion_neta,
max(tea_aprobada_amt) tea_aprobada_amt,
max(fecinformacion_dt) fecinformacion_dt,
max(flg_rectificado_nuevos_ap) flg_rectificado_nuevos_ap,
max(flg_rectificado_nuevos_pre) flg_rectificado_nuevos_pre,
substr(replace(cast(fecha_solicitud_dt as varchar), '-', ''), 1, 6) p_periodo
FROM (
select ZZ.*,
ROW_NUMBER() OVER(PARTITION BY ZZ.credito_cd ORDER BY ZZ.fecha_solicitud_dt ASC, ZZ.periodo_val ASC, ZZ.fecinformacion_dt ASC) ORDEN
FROM (
SELECT CC.*,
CASE WHEN CC.campana_val like '%Recurrente%' and GG.flg_recurrente = 0 AND flg_nuevos_ap = 1 then 1 else 0 end flg_rectificado_nuevos_ap,
CASE WHEN CC.campana_val like '%Recurrente%' and GG.flg_recurrente = 0 AND flg_nuevos_pre = 1 then 1 else 0 end flg_rectificado_nuevos_pre
FROM e_perm_aws.t_fact_vpc_colnetas CC
LEFT JOIN (
SELECT gestion , num_ruc_autocompletado_hash,
MAX(CASE WHEN campania = 'RECURRENTE' then 1 else 0 end) flg_recurrente,
MAX(CASE WHEN campania = 'NUEVOS PRE' then 1 else 0 end) flg_nuevos_pre,
MAX(CASE WHEN campania in ('NUEVOS AP', 'ECOSISTEMAS') then 1 else 0 end) flg_nuevos_ap,
SUM(FLG_GESTIONADO_ESTRICTO) gestion_total,
SUM(flg_ce) ce_total,
SUM(flg_acepta_campana) ac_total
FROM d_mdl_vpc_disc.TMP_CONTACTO_ORDEN_X_PESO_FEEDBACK_2
WHERE CAMPANIA IN ('NUEVOS AP', 'ECOSISTEMAS', 'NUEVOS PRE', 'RECURRENTE')
GROUP BY gestion , num_ruc_autocompletado_hash
) GG
ON substr(replace(cast(CC.fecha_solicitud_dt as varchar), '-', ''), 1, 6) = GG.gestion
AND CC.numero_documento_val = GG.num_ruc_autocompletado_hash
WHERE 1 = 1
AND CC.colocacion_neta > 0
AND CC.tipo_colocacion NOT LIKE '%Cima%'
AND CC.campana_val NOT like '%RECURRENTE%'
AND (
CC.tipo_colocacion in ('1. Campaña Nuevos', '103.Ecosistemas', '5. Campaña Express', '4. EN – Express') OR
CC.campana_val like '%Nuevos Pre%' OR CC.campana_val like '%Nvo Pre%' OR CC.campana_val like '%NvoPre%' OR
CC.campana_val like '%Nuevos Apr%' OR CC.campana_val like '%NVO APR%' OR CC.campana_val like '%NvoApr%' OR
(CC.campana_val like '%Recurrente%' and GG.flg_recurrente = 0 AND GG.flg_nuevos_ap = 1) OR
(CC.campana_val like '%Recurrente%' and GG.flg_recurrente = 0 AND GG.flg_nuevos_pre = 1)
)
AND CC.fecinformacion_dt in (
select fecinformacion_dt from (
SELECT periodo_val,
max(fecinformacion_dt) fecinformacion_dt
FROM e_perm_aws.t_fact_vpc_colnetas
GROUP BY periodo_val
)
)
) ZZ
) AA
WHERE AA.ORDEN = 1
GROUP BY substr(replace(cast(fecha_desemb_dt as varchar), '-', ''), 1, 6),
substr(replace(cast(fecha_solicitud_dt as varchar), '-', ''), 1, 6),
CASE WHEN tipo_colocacion in ('1. Campaña Nuevos') THEN 'NUEVOS PRE'
WHEN tipo_colocacion in ( '103.Ecosistemas', '5. Campaña Express', '4. EN – Express') THEN 'NUEVOS AP'
WHEN campana_val like '%Nuevos Pre%' OR campana_val like '%Nvo Pre%' OR campana_val like '%NvoPre%' THEN 'NUEVOS PRE'
WHEN campana_val like '%Nuevos Apr%' OR campana_val like '%NVO APR%' OR campana_val like '%NvoApr%' THEN 'NUEVOS AP'
WHEN flg_rectificado_nuevos_ap = 1 THEN 'NUEVOS AP'
WHEN flg_rectificado_nuevos_pre = 1 THEN 'NUEVOS PRE'
ELSE 'X' END,
numero_documento_val
) BB
)
Revise this Paste