SELECT ( (SUM(CASE WHEN prod IS NULL THEN Count ELSE 0 END)) AS Total, (SUM(CASE WHEN prod = 'prod1' THEN 10 ELSE 0 END)) AS `prod1`, (SUM(CASE WHEN prod = 'prod2' THEN 15 ELSE 0 END)) AS `prod2`, (SUM(CASE WHEN prod = ..... ... FROM( SELECT prod, count(*) AS Count FROM prod GROUP BY prod WITH ROLLUP) as temptbl;