-- @author tungs1 -- @modified 2013-07-28 12:00:00 -- @created 2013-07-28 12:00:00 -- @description groupingfunction groupingfunc114.sql -- @db_name groupingfunction -- @executemode normal -- @tags groupingfunction -- order 1 SELECT SUM(sale.pn) as g1, GROUPING(sale.pn) + 1 as g2 FROM product, sale WHERE product.pn=sale.pn GROUP BY ROLLUP((sale.pn),(product.pname),(sale.pn)) ORDER BY g1,g2; g1 | g2 ------+---- 200 | 1 200 | 1 200 | 1 300 | 1 300 | 1 300 | 1 400 | 1 400 | 1 400 | 1 600 | 1 600 | 1 600 | 1 700 | 1 700 | 1 700 | 1 800 | 1 800 | 1 800 | 1 800 | 1 800 | 1 800 | 1 1000 | 1 1000 | 1 1000 | 1 4800 | 2 (25 rows)