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 )
SELECT XX.CODDOC,
CASE WHEN (XX.NUM_RUC = '.' OR XX.NUM_RUC LIKE '' OR XX.NUM_RUC IS NULL) AND XX.NUM_DOC LIKE '10%' AND LEN(XX.NUM_DOC) = 11 THEN XX.NUM_DOC ELSE XX.NUM_RUC END NUM_RUC,
XX.TELEFONO,
MAX(FLG_CRUCE_RUC) FLG_CRUCE_RUC,
MAX(FLG_CRUCE_NUMDOC) FLG_CRUCE_NUMDOC,
MAX(FLG_CRUCE_RUC_CODDOC) FLG_CRUCE_RUC_CODDOC,
MAX(FLG_CRUCE_NUMDOC_CODDOC) FLG_CRUCE_NUMDOC_CODDOC,
MAX(FLG_CRUCE_RUC_RUC_CONTACTO) FLG_CRUCE_RUC_RUC_CONTACTO,
MAX(FLG_CRUCE_NUMDOC_RUC_CONTACTO) FLG_CRUCE_NUMDOC_RUC_CONTACTO,
MAX(FLG_RRLL) FLG_RRLL,
MAX(CASE WHEN ODEN_PRIORIDAD = 1 THEN N_FUENTE ELSE NULL END) N_FUENTE,
MAX(CASE WHEN ODEN_PRIORIDAD = 1 THEN DESCRIPCION ELSE NULL END) DESCRIPCION,
MAX(CASE WHEN ODEN_PRIORIDAD = 1 THEN PRIORIDAD_TELEFONO ELSE NULL END) PRIORIDAD_TELEFONO
FROM (
SELECT ZZ.*,
FF.FUENTE N_FUENTE, FF.DESCRIPCION, FF.TIPO, FF.PRIORIDAD_TELEFONO,
ROW_NUMBER() OVER (PARTITION BY ZZ.CODDOC, ZZ.NUM_RUC, ZZ.TELEFONO
ORDER BY FF.PRIORIDAD_TELEFONO ASC,
ZZ.NUM_DOC DESC
) AS ODEN_PRIORIDAD
FROM (
SELECT AA.CODDOC, AA.NUM_DOC, AA.NUM_RUC, BB.TELEFONO, BB.FUENTE,
1 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_RUC = BB.NUM_RUC AND AA.NUM_RUC ! ='.'
UNION
SELECT AA.CODDOC, AA.NUM_DOC, AA.NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 1 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_DOC = BB.NUM_DOC AND AA.NUM_DOC ! ='.'
UNION
SELECT AA.CODDOC, AA.NUM_DOC, AA.NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 1 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_RUC = BB.COD_DOC AND AA.NUM_RUC ! ='.'
UNION
SELECT AA.CODDOC, AA.NUM_DOC, AA.NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 1 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_DOC = BB.COD_DOC AND AA.NUM_DOC ! ='.'
UNION
SELECT BB.COD_DOC_CONTACTO CODDOC, BB.NUM_DOC_CONTACTO NUM_DOC, BB.NUM_RUC_CONTACTO NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 1 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_RUC = BB.NUM_RUC_CONTACTO AND AA.NUM_RUC ! ='.'
UNION
SELECT BB.COD_DOC_CONTACTO CODDOC, BB.NUM_DOC_CONTACTO NUM_DOC, BB.NUM_RUC_CONTACTO NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 1 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 0 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON AA.NUM_DOC = BB.NUM_RUC_CONTACTO AND AA.NUM_DOC ! ='.'
UNION
SELECT LL.NUM_DOC CODDOC, LL.NUM_DOC, LL.RUC NUM_RUC, BB.TELEFONO, BB.FUENTE,
0 FLG_CRUCE_RUC, 0 FLG_CRUCE_NUMDOC, 0 FLG_CRUCE_RUC_CODDOC, 0 FLG_CRUCE_NUMDOC_CODDOC, 0 FLG_CRUCE_RUC_RUC_CONTACTO, 0 FLG_CRUCE_NUMDOC_RUC_CONTACTO, 1 FLG_RRLL
FROM ODS.MM_GESCOM_UNIVERSO_MERCADO_TOTAL_BPE AA
INNER JOIN ODS.MM_SUNAT_REPRESENTANTE_LEGAL LL
ON AA.NUM_RUC = LL.RUC AND LL.DESESTADO='VIGENTE'
INNER JOIN ODS.MD_CNTC_TELEFONOS BB
ON LL.TIPDOC = BB.TIP_DOC AND LL.NUM_DOC = BB.COD_DOC
) ZZ
LEFT JOIN BDS.DE_CNTC_FUENTES FF
ON ZZ.FUENTE = FF.ID_FUENTE
) XX
GROUP BY XX.CODDOC,
CASE WHEN (XX.NUM_RUC = '.' OR XX.NUM_RUC LIKE '' OR XX.NUM_RUC IS NULL) AND XX.NUM_DOC LIKE '10%' AND LEN(XX.NUM_DOC) = 11 THEN XX.NUM_DOC ELSE XX.NUM_RUC END,
XX.TELEFONO
DROP TABLE IF EXISTS d_mdl_vpc_disc.mm_base_nuevos_mes_contactabilidad
CREATE EXTERNAL TABLE d_mdl_vpc_disc.mm_base_nuevos_mes_contactabilidad
( `CODDOC` string,
`NUM_RUC` string,
`TELEFONO` string,
`FLG_CRUCE_RUC` int,
`FLG_CRUCE_NUMDOC` int,
`FLG_CRUCE_RUC_CODDOC` int,
`FLG_CRUCE_NUMDOC_CODDOC` int,
`FLG_CRUCE_RUC_RUC_CONTACTO` int,
`FLG_CRUCE_NUMDOC_RUC_CONTACTO` int,
`FLG_RRLL` int,
`N_FUENTE` int,
`DESCRIPCION` int,
`PRIORIDAD_TELEFONO` int
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION 's3://sagemaker-us-east-1-058528764918/vpc/Contacto_Efectivo/BASE_NUEVO_MES/'
TBLPROPERTIES (
'skip.header.line.count'='1',
'has_encrypted_data'='false'
);
Revise this Paste