-- MONTH x CATEGORY X RULE wise Rejected txn & gmv, Attempted txn & gmv and Rejection rate
WITH flattened as
(SELECT DISTINCT mnth, transactionid, strategy_name, actionrecommended, amt, case when m1.mid is not null then category else 'Others' end as business_category FROM
(select transactionid
, json_extract_scalar(actionrecommendedrules,'$.actionRecommendedRules[0]') as strategy_name
, cast(eventAmount as double)/100 as amt
, substr(cast(dateinserted as varchar), 1,7) as mnth
-- , paymethod,eventName,addAndPay
, paytmmerchantid
, actionrecommended
FROM cdp_risk_transform.maquette_flattened_onus_snapshot_v3
WHERE dl_last_updated BETWEEN date '2025-01-01' AND DATE'2025-04-30'
AND SOURCE = 'PG') a
left join
(select * from team_kingkong.voc_mid_categorization
where mid != '') m1
on a.paytmmerchantid = m1.mid)
SELECT A.mnth, A.business_category, A.strategy_name, A.rej_txns, A.rej_gmv, B.attempted_txns, B.attempted_gmv FROM
(select mnth
, business_category
, strategy_name
, count(transactionid) as rej_txns
, sum(amt) as rej_gmv
from flattened
WHERE actionrecommended = 'BLOCK'
GROUP BY 1,2,3)A
INNER JOIN
(SELECT mnth, business_category
, count(transactionid) as attempted_txns
, sum(amt) as attempted_gmv
FROM flattened
GROUP BY 1,2)B
ON A.mnth = B.mnth AND A.business_category = B.business_category;
Comments