Column aliases for GROUP BY and HAVING

Поиск
Список
Период
Сортировка
От Rikard Bosnjakovic
Тема Column aliases for GROUP BY and HAVING
Дата
Msg-id d9e88eaf0911251120g5f2e1506k900e53102ef9a1e1@mail.gmail.com
обсуждение исходный текст
Ответы Re: Column aliases for GROUP BY and HAVING  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Column aliases for GROUP BY and HAVING  (Kris Kewley <kris.kewley@gmail.com>)
Список pgsql-novice
(Postgres version 8.2.4)

Trying to understand GROUP BY, I'm reading on
<http://www.postgresql.org/docs/8.4/interactive/queries-table-expressions.html>.
Consider this query:

=> select x, sum(y) from test1 group by x order by x;
 x | sum
---+-----
 a |   4
 b |   5
 c |   2
(3 rows)

I understand what's happening here, all is fine. So I play with HAVING:

=> select x, sum(y) from test1 group by x having sum(y)>3 order by x;
 x | sum
---+-----
 a |   4
 b |   5
(2 rows)


But this confuses me:

=> select x, sum(y) as foo from test1 group by x having foo>3 order by x;
ERROR:  column "foo" does not exist
LINE 1: ...ect x, sum(y) as foo from test1 group by x having foo>3 orde...

Why isn't it possible to refer to a column alias in HAVING?


--
- Rikard

В списке pgsql-novice по дате отправления:

Предыдущее
От: "Dara Olson"
Дата:
Сообщение: Re: sum divided by count ends in zero
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Column aliases for GROUP BY and HAVING