Olá!
Fiquei com uma duvida sobre a resolução do ultimo exercicio da aula 6 de MySQL II: Consultas poderosas, onde durante a aula no exercício em que precisamos calcular a diferença da média do aluno para a média geral, a solução passada pelo instrutor é a seguinte. select a.nome, avg(n1.nota) as media, avg(n1.nota) - (select avg(n2.nota) from nota n2) as diferenca from nota n1 join resposta r on r.id = n1.resposta_id join exercicio e on e.id = r.exercicio_id join secao s on s.id = e.secao_id join aluno a on a.id = r.aluno_id group by a.nome Utilizamos uma sub-query com nome diferente da principal para fazer o calculo, porém no ultimo exercicio desta unidade o problema é o seguinte: "Exiba a quantidade de matrículas por curso. Além disso, exiba a divisão entre matrículas naquele curso e matrículas totais." E a solução: select c.nome, count(m.id), count(m.id)/(select count(id) from matricula m) from curso c join matricula m on m.curso_id = c.id group by c.nome
Gostaria de saber porque em um dos exemplos usamos nomes diferentes para fazer as querys e no outro utilizamos apenas um unico? Eu entendi que neste segundo exemplo ele não estaria efetuando a divisão do total de matriculas pelas matriculas de cada curso, mas sim dividindo o total pelo total também, alguém poderia me auxiliar?