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 ( 2 years ago )
table_ ='HM_BASE_DESPLIEGUE_2'
apply_create(
    table=table_, 
    path='{}vpc/aceptacion/athena_nuevomes/{}/'.format(path_, table_), 
    llave='p_periodo', 
    query="""
  SELECT periodo_campania,  num_ruc,
               MAX(CASE WHEN upper(producto) in ('NUEVOS APPAS', 'NUEVOS APCONSUMO', 'NUEVOS AP', 'NUEVOS AP SUPER_AGIL', 'PAGARE CERRADO') 
                   AND upper(subproducto) NOT LIKE '%ECOSISTEMAS%' 
                   AND upper(subproducto) NOT LIKE '%IMPULSO%' then 1 else 0 end) flg_nuevos_ap,
               MAX(CASE WHEN upper(producto) in ('NUEVOS PRE') then 1 else 0 end) flg_nuevos_pre,
               MAX(CASE WHEN upper(producto) in ('IMPULSO') OR upper(subproducto) LIKE '%IMPULSO%'  then 1 else 0 end) flg_impulso,
               MAX(CASE WHEN upper(producto) in ('FINANCIAMIENTO DE VENTAS') or upper(producto) like '%DESCUENTO%' 
                   or upper(producto) like '%NEGOCIABLE%' or upper(producto) like '%FINANCIAMIENTO%' then 1 else 0 end) flg_financiamiento,
               MAX(CASE WHEN upper(producto) in ('ECOSISTEMAS') OR upper(subproducto) LIKE '%ECOSISTEMAS%' then 1 else 0 end) flg_ecosistemas,
               CAST(MAX(
                   CASE WHEN oferta like '%Venta%' OR oferta LIKE '' then Null 
                        WHEN LENGTH(split_part(oferta, 'Oferta 2: ', 2)) > 0 then split_part(oferta, 'Oferta 2: ', 2) 
                        WHEN LENGTH(split_part(oferta, 'Oferta 2:', 2)) > 0 then split_part(oferta, 'Oferta 2:', 2) 
                        WHEN LENGTH(split_part(oferta, '/', 2)) > 0 then split_part(oferta, '/', 2) 
                   ELSE oferta end) AS DOUBLE) oferta,
               MAX(plazo) plazo,
               substring(MAX(bucket),1,1) bucket,
               MAX(CASE WHEN UPPER(canal_tlv) LIKE '%B%' THEN 1 ELSE 0 END) flg_canal_b,
               MAX(CASE WHEN UPPER(canal_tlv) LIKE '%C%' THEN 1 ELSE 0 END) flg_canal_c,
               MAX(tasa) tasa,
               MAX(CASE WHEN tasa_piso is null and tasa is not null then tasa -0.02 else tasa_piso end) tasa_piso,
               MAX(CASE WHEN upper(tipo_carga) LIKE '%REGULAR%' THEN 1 ELSE 0 END) FLG_CARGA_REGULAR,
               
                MAX(CASE WHEN upper(tipo_carga) LIKE '%PRUEBA%' THEN 1
                        WHEN upper(tipo_carga) LIKE '%PILOTO%' THEN 1 ELSE 0 END ) FLG_TIPO_CARGA_PILOTO,
                MAX(CASE WHEN upper(tipo_carga) LIKE '%REGULAR%' THEN 1
                         WHEN upper(tipo_carga) LIKE '%ASINCRONA%' THEN 1 ELSE 0 END) FLG_TIPO_CARGA_REGULAR,
                MAX(CASE WHEN upper(tipo_carga) LIKE '%RECARGA%' THEN 1
                         WHEN upper(tipo_carga) LIKE '%COMPRA DE DATOS%' THEN 1 ELSE 0 END) FLG_TIPO_CARGA_RECARGA,
                MAX(CASE WHEN upper(tipo_carga) LIKE '%SIN CELULAR%' THEN 1 ELSE 0 END) FLG_TIPO_CARGA_SIN_CELULAR,  
                MAX(CASE WHEN upper(tipo_carga) LIKE '%RESCATE%' THEN 1 ELSE 0 END) FLG_TIPO_CARGA_RESCATE,  
                MAX(CASE WHEN tipo_carga LIKE '%TUBERIA%' THEN 1 ELSE 0 END) FLG_TIPO_CARGA_TUBERIA,
                MAX(CASE WHEN tipo_carga LIKE ('') THEN 1 ELSE 0 END) FLG_TIPO_CARGA_VACIO,

               periodo_campania p_periodo
        FROM disc_comercial.HM_DESPLIEGUE_CAMPANIAS 
        WHERE 1 = 1
        AND (
              producto in ('NUEVOS PRE', 'ECOSISTEMAS', 'NUEVOS APPAS', 'NUEVOS APCONSUMO', 'NUEVOS AP', 'NUEVOS AP SUPER_AGIL',
                           'IMPULSO', 'PAGARE CERRADO')

              OR (
                   (  
                      upper(producto) like '%DESCUENTO%' OR upper(producto) like '%NEGOCIABLE%' OR upper(producto) like '%FINANCIAMIENTO%'
                   ) 
                   AND 
                   (
                     upper(SUBPRODUCTO) like '%PROACTIVO%' or upper(SUBPRODUCTO) like '%DESEMBOLSADO%'
                   )
              )

        )
        AND UPPER(TIPO_CARGA) = 'REGULAR'
        AND periodo_campania is not null
        AND periodo_campania not like ''
        GROUP BY periodo_campania, num_ruc
"""
)

 

Revise this Paste

Your Name: Code Language: