CASE 4 AGENT LEVEL ONLY NEW
Wed Apr 26 2023 17:17:29 GMT+0000 (Coordinated Universal Time)
Saved by @shubhangi_burle
%jdbc(hive) set tez.queue.name=phonepe_verified; set hive.execution.engine=tez; -- -- INCOMING TICKET COUNT -- SELECT '2023-04-24' as run_date_monday, A.agent_name -- , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN A.incoming_cnt ELSE 0 END) AS Week1_ticket_cnt -- , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN A.incoming_cnt ELSE 0 END) AS Week2_ticket_cnt -- , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN A.incoming_cnt ELSE 0 END) AS Week3_ticket_cnt -- , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN A.incoming_cnt ELSE 0 END) AS Week4_ticket_cnt -- , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN A.incoming_cnt ELSE 0 END) AS Week5_ticket_cnt -- FROM -- (SELECT Date(created_time) as dt, `agent` AS agent_name, COUNT(*) AS incoming_cnt -- FROM freshdesk.properties -- WHERE year IN (year(DATE_SUB('2023-04-24', 36)) , year(DATE_SUB('2023-04-24', 2))) -- AND month >= month(DATE_SUB('2023-04-24', 36)) AND month <= month(DATE_SUB('2023-04-24', 2)) -- AND Date(created_time) BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 2) -- -- AND status IN ('Closed', 'Resolved') -- AND `group` IN ('Risk Team', 'security', 'Cybercell', 'FRA-Escalations', 'Blocked Fraud', 'Lien Email', 'NPCI Escalations') -- AND `agent` IN ('Akash Shinde', 'arifa.fathima', 'ashmita.maheshwari', 'imran.khan', 'pooja.rajangam', 'sharath.ls', 'vivek.gowra', 'BhanuPrasad N' -- , 'karthik.hiremath', 'anushka.prabha', 'Prasad Patil', 'fra-automation', 'alice') -- GROUP BY Date(created_time), `agent`)A -- GROUP BY agent_name -- REPLY & PRIVATE NOTE COUNT SELECT '2023-04-24' AS run_date_monday, C.agent_name , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN reply_cnt ELSE 0 END) AS Week1_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN private_note_cnt ELSE 0 END) AS Week1_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN reply_cnt ELSE 0 END) AS Week2_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN private_note_cnt ELSE 0 END) AS Week2_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN reply_cnt ELSE 0 END) AS Week3_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN private_note_cnt ELSE 0 END) AS Week3_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN reply_cnt ELSE 0 END) AS Week4_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN private_note_cnt ELSE 0 END) AS Week4_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN reply_cnt ELSE 0 END) AS Week5_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN private_note_cnt ELSE 0 END) AS Week5_private_note_cnt FROM (SELECT Date(created_time) as dt, ticket_id FROM freshdesk.properties WHERE year IN (year(DATE_SUB('2023-04-24', 36)) , year(DATE_SUB('2023-04-24', 2))) AND month >= month(DATE_SUB('2023-04-24', 36)) AND month <= month(DATE_SUB('2023-04-24', 2)) AND Date(created_time) BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 2) -- AND status IN ('Closed', 'Resolved') AND `group` IN ('Risk Team', 'security', 'Cybercell', 'FRA-Escalations', 'Blocked Fraud', 'Lien Email', 'NPCI Escalations') -- AND `agent` IN ('Akash Shinde', 'arifa.fathima', 'ashmita.maheshwari', 'imran.khan', 'pooja.rajangam', 'sharath.ls', 'vivek.gowra', 'BhanuPrasad N' -- , 'karthik.hiremath', 'anushka.prabha', 'Prasad Patil') GROUP BY Date(created_time), ticket_id)A INNER JOIN (SELECT from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd') as dt, ticket_id , CASE WHEN performer_id = 40094141204 THEN 'Akash Shinde' WHEN performer_id = 40096302442 THEN 'arifa.fathima' WHEN performer_id = 40098326974 THEN 'ashmita.maheshwari' WHEN performer_id = 40068659687 THEN 'imran.khan' WHEN performer_id = 40079215228 THEN 'pooja.rajangam' WHEN performer_id = 40097988320 THEN 'sharath.ls' WHEN performer_id = 40080532390 THEN 'vivek.gowra' WHEN performer_id = 40139679443 THEN 'BhanuPrasad N' WHEN performer_id = 40134990405 THEN 'karthik.hiremath' WHEN performer_id = 40071150299 THEN 'anushka.prabha' WHEN performer_id = 40070159259 THEN 'Prasad Patil' WHEN performer_id = 40031538049 THEN 'alice' WHEN performer_id = 40062605741 THEN 'fra-automation' END AS agent_name , COUNT(CASE WHEN activity_note_type = 0 THEN ticket_id ELSE NULL END) AS reply_cnt , COUNT(CASE WHEN activity_note_type = 3 THEN ticket_id ELSE NULL END) AS private_note_cnt FROM freshdesk.activities WHERE from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd') >= DATE_SUB('2023-04-24', 36) AND performer_id IN (40094141204, 40096302442, 40098326974, 40068659687, 40079215228, 40097988320, 40080532390, 40139679443, 40134990405, 40071150299, 40070159259, 40031538049, 40062605741) GROUP BY from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd'), ticket_id , CASE WHEN performer_id = 40094141204 THEN 'Akash Shinde' WHEN performer_id = 40096302442 THEN 'arifa.fathima' WHEN performer_id = 40098326974 THEN 'ashmita.maheshwari' WHEN performer_id = 40068659687 THEN 'imran.khan' WHEN performer_id = 40079215228 THEN 'pooja.rajangam' WHEN performer_id = 40097988320 THEN 'sharath.ls' WHEN performer_id = 40080532390 THEN 'vivek.gowra' WHEN performer_id = 40139679443 THEN 'BhanuPrasad N' WHEN performer_id = 40134990405 THEN 'karthik.hiremath' WHEN performer_id = 40071150299 THEN 'anushka.prabha' WHEN performer_id = 40070159259 THEN 'Prasad Patil' WHEN performer_id = 40031538049 THEN 'alice' WHEN performer_id = 40062605741 THEN 'fra-automation' END)C ON A.ticket_id = C.ticket_id AND A.dt <= C.dt GROUP BY C.agent_name ----------------------------------------------------------------- -- final combined %jdbc(hive) set tez.queue.name=phonepe_verified; set hive.execution.engine=tez; SELECT P.run_date_monday, P.agent_name , week1_ticket_cnt , week1_reply_cnt , week1_private_note_cnt , week2_ticket_cnt , week2_reply_cnt , week2_private_note_cnt , week3_ticket_cnt , week3_reply_cnt , week3_private_note_cnt , week4_ticket_cnt , week4_reply_cnt , week4_private_note_cnt , week5_ticket_cnt , week5_reply_cnt , week5_private_note_cnt FROM (-- INCOMING TICKET COUNT SELECT '2023-04-24' as run_date_monday, A.agent_name , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN A.incoming_cnt ELSE 0 END) AS Week1_ticket_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN A.incoming_cnt ELSE 0 END) AS Week2_ticket_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN A.incoming_cnt ELSE 0 END) AS Week3_ticket_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN A.incoming_cnt ELSE 0 END) AS Week4_ticket_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN A.incoming_cnt ELSE 0 END) AS Week5_ticket_cnt FROM (SELECT Date(created_time) as dt, `agent` AS agent_name, COUNT(*) AS incoming_cnt FROM freshdesk.properties WHERE year IN (year(DATE_SUB('2023-04-24', 36)) , year(DATE_SUB('2023-04-24', 2))) AND month >= month(DATE_SUB('2023-04-24', 36)) AND month <= month(DATE_SUB('2023-04-24', 2)) AND Date(created_time) BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 2) AND `group` IN ('Risk Team', 'security', 'Cybercell', 'FRA-Escalations', 'Blocked Fraud', 'Lien Email', 'NPCI Escalations') AND `agent` IN ('Akash Shinde', 'arifa.fathima', 'ashmita.maheshwari', 'imran.khan', 'pooja.rajangam', 'sharath.ls', 'vivek.gowra', 'BhanuPrasad N' , 'karthik.hiremath', 'anushka.prabha', 'Prasad Patil', 'fra-automation', 'alice') GROUP BY Date(created_time), `agent`)A GROUP BY agent_name)P LEFT JOIN (-- REPLY & PRIVATE NOTE COUNT SELECT '2023-04-24' AS run_date_monday, C.agent_name , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN reply_cnt ELSE 0 END) AS Week1_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 30) THEN private_note_cnt ELSE 0 END) AS Week1_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN reply_cnt ELSE 0 END) AS Week2_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 29) AND DATE_SUB('2023-04-24', 23) THEN private_note_cnt ELSE 0 END) AS Week2_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN reply_cnt ELSE 0 END) AS Week3_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 22) AND DATE_SUB('2023-04-24', 16) THEN private_note_cnt ELSE 0 END) AS Week3_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN reply_cnt ELSE 0 END) AS Week4_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 15) AND DATE_SUB('2023-04-24', 9) THEN private_note_cnt ELSE 0 END) AS Week4_private_note_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN reply_cnt ELSE 0 END) AS Week5_reply_cnt , SUM(CASE WHEN A.dt BETWEEN DATE_SUB('2023-04-24', 8) AND DATE_SUB('2023-04-24', 2) THEN private_note_cnt ELSE 0 END) AS Week5_private_note_cnt FROM (SELECT Date(created_time) as dt, ticket_id FROM freshdesk.properties WHERE year IN (year(DATE_SUB('2023-04-24', 36)) , year(DATE_SUB('2023-04-24', 2))) AND month >= month(DATE_SUB('2023-04-24', 36)) AND month <= month(DATE_SUB('2023-04-24', 2)) AND Date(created_time) BETWEEN DATE_SUB('2023-04-24', 36) AND DATE_SUB('2023-04-24', 2) AND `group` IN ('Risk Team', 'security', 'Cybercell', 'FRA-Escalations', 'Blocked Fraud', 'Lien Email', 'NPCI Escalations') GROUP BY Date(created_time), ticket_id)A INNER JOIN (SELECT from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd') as dt, ticket_id , CASE WHEN performer_id = 40094141204 THEN 'Akash Shinde' WHEN performer_id = 40096302442 THEN 'arifa.fathima' WHEN performer_id = 40098326974 THEN 'ashmita.maheshwari' WHEN performer_id = 40068659687 THEN 'imran.khan' WHEN performer_id = 40079215228 THEN 'pooja.rajangam' WHEN performer_id = 40097988320 THEN 'sharath.ls' WHEN performer_id = 40080532390 THEN 'vivek.gowra' WHEN performer_id = 40139679443 THEN 'BhanuPrasad N' WHEN performer_id = 40134990405 THEN 'karthik.hiremath' WHEN performer_id = 40071150299 THEN 'anushka.prabha' WHEN performer_id = 40070159259 THEN 'Prasad Patil' WHEN performer_id = 40031538049 THEN 'alice' WHEN performer_id = 40062605741 THEN 'fra-automation' END AS agent_name , COUNT(CASE WHEN activity_note_type = 0 THEN ticket_id ELSE NULL END) AS reply_cnt , COUNT(CASE WHEN activity_note_type = 3 THEN ticket_id ELSE NULL END) AS private_note_cnt FROM freshdesk.activities WHERE from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd') >= DATE_SUB('2023-04-24', 36) AND performer_id IN (40094141204, 40096302442, 40098326974, 40068659687, 40079215228, 40097988320, 40080532390, 40139679443, 40134990405, 40071150299, 40070159259, 40031538049, 40062605741) GROUP BY from_unixtime(unix_timestamp(`date` ,'yyyyMMdd'), 'yyyy-MM-dd'), ticket_id , CASE WHEN performer_id = 40094141204 THEN 'Akash Shinde' WHEN performer_id = 40096302442 THEN 'arifa.fathima' WHEN performer_id = 40098326974 THEN 'ashmita.maheshwari' WHEN performer_id = 40068659687 THEN 'imran.khan' WHEN performer_id = 40079215228 THEN 'pooja.rajangam' WHEN performer_id = 40097988320 THEN 'sharath.ls' WHEN performer_id = 40080532390 THEN 'vivek.gowra' WHEN performer_id = 40139679443 THEN 'BhanuPrasad N' WHEN performer_id = 40134990405 THEN 'karthik.hiremath' WHEN performer_id = 40071150299 THEN 'anushka.prabha' WHEN performer_id = 40070159259 THEN 'Prasad Patil' WHEN performer_id = 40031538049 THEN 'alice' WHEN performer_id = 40062605741 THEN 'fra-automation' END)C ON A.ticket_id = C.ticket_id AND A.dt <= C.dt GROUP BY C.agent_name)Q ON P.agent_name = Q.agent_name ORDER BY P.agent_name
Comments