Я думаю, что это только потому, что именно это определяет стандарт SQL. Я не согласен с gd047 в том, что псевдоним не может быть использован : предложение HAVING работает с (промежуточными) результатами запроса, то есть после агрегирования, поэтому для запроса это выглядит довольно просто синтаксический анализатор, чтобы использовать псевдоним для доступа к этому результату.
Вы, конечно, можете избежать повторения СУММЫ, как это (используя пример из связанного вопроса):
SELECT *
from
( SELECT donem, bolge_adi, sehir_tasra "1=S, 2=T",
COUNT(DISTINCT mekankodu) "M.SAYISI",
SUM(b2b_dagitim + b2b_transfer - b2b_iade) satis
FROM mps_view2
WHERE donem IN ('200612','200712','200812','200912')
AND (ob IS NOT NULL OR b2b_ob IS NOT NULL)
GROUP BY donem, bolge_adi, sehir_tasra
)
WHERE satis > 0
ORDER BY donem, bolge_adi, sehir_tasra