Boa tarde,
Neste caso, se houvesse duas perguntas iguais, por exemplo, o sistema retornaria a quantidade agupado, mesmo que uma questão seja referente a um exercício e outra a outro exercício.
O ID é quem irá diferenciar essas questões, trazendo assim as questões, mesmo que com mesma descrição, mas agrupamentos distintos.
Por exemplo:
Tabela "exercício"
id | pergunta
1 | Questão A
2 | Questão B
3 | Questão A
Tabela "respostas"
id | resposta| exercicio_ID
1 | Resposta A | 1
2 | Resposta B | 2
3 | Resposta C | 3
Se executar o SQL Agrupando penas pela pergunta, sera apresentado:
Questão A | 2
Questão B | 1
Mas agrupando pelo id e pergunta será apresentado:
Questão A | 1
Questão B | 1
Questão A | 1
O campo pergunta é obrigatório informar pois ele é apresentado no SQL, o ID não é obrigatório, mas é o que irá gerar os dados sem erros, tendo em vista que ele é único.
Espero ter ajudado.