[ HAVING condition ]GROUP BY ( ( ( expr | c_alias | position | rollup_cube_clause | grouping_sets_clause) [ , ( expr | c_alias | position | rollup_cube_clause | grouping_sets_clause) ...] ) | ALL ) [ HAVING condition ]