Srs, bom dia!
A minha sub-query está retornando um valor hexadecimal, já tentei usar as funções round e cast mas sem sucesso. O interessante é que no meu primeiro SQL essas funções funcionam perfeitamente, se eu isolar o select da sub-query em um único select também funciona.
Eu vi uma FAQ na Oracle que os valores apresentados na sub-queries são String por isso não é possível converter usando os comando round e cast. Se alguém puder ajudar eu agradeço. Segue o meus script.
```
select a.nome, c.nome, avg(n.nota), avg(n.nota) - (select cast(avg(n.nota) as numeric(6,2)) from nota n) from nota n
join resposta r on r.id = n.resposta_id
join exercicio e on e.id = r.exercicio_id
join secao s on s.id = e.secao_id
join curso c on c.id = s.curso_id
join aluno a on r.aluno_id = a.id
group by c.nome, a.nome;
```