Není to jen Oracle SQL, ve skutečnosti věřím, že odpovídá standardu ANSI SQL (ačkoli na to nemám odkaz). Důvodem je, že klauzule SELECT je logicky zpracována po klauzuli GROUP BY, takže v době, kdy je GROUP BY hotová, aliasy ještě neexistují.
Možná tento poněkud směšný příklad pomůže objasnit problém a nejednoznačnost, které se SQL vyhýbá:
SQL> select job as sal, sum(sal) as job
2 from scott.emp
3 group by job;
SAL JOB
--------- ----------
ANALYST 6000
CLERK 4150
MANAGER 8275
PRESIDENT 5000
SALESMAN 5600