SELECT COALESCE(TO_CHAR(calendaryear), 'All years') AS Year, COALESCE(channelname, 'All channels') AS Channel, COUNT(DISTINCT orderkey) AS Orders_Num FROM dimorderchannel doc INNER JOIN factonlinesales fos ON doc.channelkey = fos.channelkey INNER JOIN dimdate dd ON dd.datekey = fos.orderdatekey GROUP BY ROLLUP(TO_CHAR(calendaryear), channelname) ;