select pack_cod, SUM(CASE WHEN reg='1' THEN 1 ELSE 0 END) as t1, SUM(CASE WHEN reg='2' THEN 1 ELSE 0 END) as t2, SUM(CASE WHEN reg='3' THEN 1 ELSE 0 END) as t3, SUM(CASE WHEN reg='4' THEN 1 ELSE 0 END) as t4, SUM(CASE WHEN reg='5' THEN 1 ELSE 0 END) as t5, SUM(CASE WHEN reg='6' THEN 1 ELSE 0 END) as t6, SUM(CASE WHEN reg='7' THEN 1 ELSE 0 END) as t7, SUM(CASE WHEN reg='8' THEN 1 ELSE 0 END) as t8, SUM(CASE WHEN reg='9' THEN 1 ELSE 0 END) as t9, SUM(CASE WHEN reg='G' THEN 1 ELSE 0 END) as t10, count(distinct(cust_cod)) as total FROM churn WHERE status='churn' and no_of_mon=2 GROUP BY pack_cod;