Imagina que tienes una tabla de empleados con columnas emp_id (clave empleado) y dept_id (clave del departamento)...
Si quisieras obtener cuantos empleados por departamento tienes la consulta seria asi:
SELECT DEPT_ID, COUNT(1) FROM EMPLEADOS GROUP BY DEPT_ID ;
Notese que en el GROUP BY solo pongo DEPT_ID, entonces podemos decir que iran en el GROUP BY las columnas que no se utilicen en las funciones grupales ... otro ejemplo ...
Imagina que tengo otra columna SALARY .... OK ???
y quiero obtener la suma de salarios por departamente ...
SELECT DEPT_ID, SUM(SALARY) FROM EMPLEADOS GROUP BY DEPT_ID ;
SALARY esta siendo afectado por la funcion grupal SUM ... por lo que DEPT_ID no la afecta ninguna funcion grupal y por esto va en el GROUP BY ...