Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Por que está diferente?

Olá! Gostaria de saber o porquê dos resultados estarem diferentes quando declaro da forma mínima (a que tem na resposta) e quando faço "invocando" toda a tabela* e tentando tirar resultados de lá.

*:

select exercicio.pergunta, count(resposta.id) from resposta inner join exercicio on exercicio.id = resposta.exercicio_id inner join secao on secao.id = exercicio.secao_id inner join curso on curso.id = secao.curso_id inner join matricula on matricula.curso_id = curso.id inner join aluno on matricula.aluno_id = aluno.id group by exercicio.pergunta

1 resposta
solução!

Arthur

faltou você linkar resposta com aluno. Veja como ficou

select exercicio.pergunta, count(resposta.id) 
from resposta inner join exercicio on exercicio.id = resposta.exercicio_id 
inner join secao on secao.id = exercicio.secao_id 
inner join curso on curso.id = secao.curso_id 
inner join matricula on matricula.curso_id = curso.id 
inner join aluno on matricula.aluno_id = aluno.id and resposta.aluno_id = aluno.id
group by exercicio.pergunta

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software