Re: field alias in where condition

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Re: field alias in where condition
Дата
Msg-id 42A06F03.3080306@archonet.com
обсуждение исходный текст
Ответ на field alias in where condition  (Havasvölgyi Ottó <h.otto@freemail.hu>)
Список pgsql-general
Havasvölgyi Ottó wrote:
> Hi all,
>
> I issued the following queries:
>
>
> select substring(proname from 1 to 1) as nevresz, count(*)
> from pg_proc
> where nevresz = 'a'
> order by nevresz
> group by nevresz;
>
> select substring(proname from 1 to 1) as nevresz, count(*)
> from pg_proc
> order by nevresz
> group by nevresz;
>
> The first query fails, and says that column 'nevresz' does not exist.
> The second is OK.
>
> What is the problem? I cannot use column alias in where condition?

Correct. SQL defines it that way. You could reformulate as a sub-query
if you wanted:

SELECT nevresz,count(*)
FROM
(
   SELECT substring(proname from 1 to 1) as nevresz FROM pg_proc
) AS dummy
GROUP BY nevresz
ORDER BY nevresz


--
   Richard Huxton
   Archonet Ltd


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

Предыдущее
От: Russ Brown
Дата:
Сообщение: Re: PG Lightning Admin running on Linux via WINE 2005524
Следующее
От: Tom Lane
Дата:
Сообщение: Re: field alias in where condition