Reputation: 334
I was wondering if you can reference something in the where clause like:
select
sum([some calculation]) as x,
sum([some other calculation]) as y,
x/y as z
from
[rest of the sql...]
Many Thanks
K
Upvotes: 0
Views: 87
Reputation: 1858
The SQL standard does not support this. You have to write:
select
sum([some calculation]) as x,
sum([some other calculation]) as y,
sum([some calculation])/sum([some other calculation]) as z
from
[rest of the sql...]
There may be some RDBMS out there that support your syntax, though.
Upvotes: 1
Reputation: 263723
No, you cannot used the alias that was generated on the same level on the SELECT
statement.
Here are the possible ways to accomplish.
Using the original formula:
select sum([some calculation]) as x,
sum([some other calculation]) as y,
sum([some calculation]) / sum([some other calculation]) as z
from tableName
or by using subquery:
SELECT x,
y,
x/y z
FROM
(
select sum([some calculation]) as x,
sum([some other calculation]) as y
from tableName
) s
Upvotes: 1