Hello Simon,
This question was raised up during writing a query where many columns are a result of long mathematical operations, so I thought why not to rename them and use the new names instead of repeating the same operations On the row level, the value of a and b are know, so why we need a temporary table or CTE. Why I can not use it directly as shown in the example below. why a and b can not be used as aliases for the column names ? I want to know the theoretical reason behind it? Thanks CREATE TABLE numbers ( num1 integer, num2 integer ); INSERT INTO numbers values (3,4); SELECT num1, num2, num1 + num2 FROM numbers SELECT num1 as a, num2 as b, a + b as c FROM number SELECT num1 as a, num2 as b, num1 + num2 as c FROM numbers ________________________________ From: Simon Tokumine <si...@vizzuality.com> To: salah jubeh <s_ju...@yahoo.com> Cc: pgsql <pgsql-general@postgresql.org> Sent: Wednesday, December 21, 2011 1:14 PM Subject: Re: [GENERAL] can not use the column after rename Hi Salah, This is equivalent: WITH numbers AS (SELECT 1 AS a, 2 AS b) SELECT a, b, a+b AS c FROM numbers; S On Wed, Dec 21, 2011 at 11:39 AM, salah jubeh <s_ju...@yahoo.com> wrote: Hello, > > > >Why I can not do something like this in Postgres. > > > > SELECT 1 as a , 2 as b , a + b as c ; > > >Regards > > > >