Leonardo, acho que você se equivocou no final do vídeo TypedQuery. Quando foi feito o 'group by m.data', a consulta retornou 4 linhas, porque o agrupamento por data considera também as horas, minutos e segundos. Nesse caso, não houve agrupamento nenhum e, por isso, as 4 linhas foram retornadas (uma para cada data/hora diferente). E a média de um elemento é o próprio elemento. Não foi correto utilizar o distinct. O group by deveria ter sido feito utilizando funções que extraíssem apenas o dia, mês e ano da data. O resultado final apenas deu certo por coincidência (porque os dois elementos de cada dia eram iguais). Pode dar uma revisada aí? Espero ter sido claro. No mais, estou adorando o curso. Conteúdo fantástico e muito bem explicado.