I think you may have misunderstood me, in SQL Server you can use the alias in another query, just not the same one you created it in.
So you can do this
Code:
SELECT Q1.MyCalc , Q1.MyOtherCalc , Q1.MyCalc - Q1.MyOtherCalc as NewResult
FROM
(
SELECT Price1 * Uplift as MyCalc, Price2 * Uplift as MyOtherCalc
From MyTable
) As Q1
But not
Code:
SELECT Price1 * Uplift as MyCalc, Price2 * Uplift as MyOtherCalc, MyCalc - MyOtherCalc as NewResult
From MyTable
As Q1
The latter would work in Access however, it doesn't object provided you do things in the correct order.