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
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 <simon@xxxxxxxxxxxxxx>
To: salah jubeh <s_jubeh@xxxxxxxxx>
Cc: pgsql <pgsql-general@xxxxxxxxxxxxxx>
Sent: Wednesday, December 21, 2011 1:14 PM
Subject: Re: 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
S
On Wed, Dec 21, 2011 at 11:39 AM, salah jubeh <s_jubeh@xxxxxxxxx> wrote:
Hello,
Why I can not do something like this in Postgres.SELECT 1 as a , 2 as b , a + b as c ;Regards