Skip site navigation (1) Skip section navigation (2)

Re: Reuse previously calculated column in sql query?

From: "Iain" <iain(at)mst(dot)co(dot)jp>
To: "Rod Taylor" <pg(at)rbt(dot)ca>,"Philippe Lang" <philippe(dot)lang(at)attiksystem(dot)ch>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Reuse previously calculated column in sql query?
Date: 2004-10-21 01:31:00
Message-ID: 008f01c4b70d$a22184a0$7201a8c0@mst1x5r347kymb (view raw or flat)
Thread:
Lists: pgsql-sql
Using the the sub-select is one way, but there is another way.

If the function can be declared as strict or immutable the you can call it 
as many times as you like in a single transaction and it will only be 
evaluated once. As far as I know this does work as advertised.

Check the SQL commands reference section of the manual for CREATE FUNCTION

Regards
Iain
----- Original Message ----- 
From: "Rod Taylor" <pg(at)rbt(dot)ca>
To: "Philippe Lang" <philippe(dot)lang(at)attiksystem(dot)ch>
Cc: <pgsql-sql(at)postgresql(dot)org>
Sent: Wednesday, October 20, 2004 10:05 PM
Subject: Re: [SQL] Reuse previously calculated column in sql query?


> On Wed, 2004-10-20 at 08:50, Philippe Lang wrote:
>> Hello,
>>
>> Is it possible to reuse a previously calculated column in a following
>> column, like:
>
> SELECT col1
>     , col2
>     , col2 * 0.75 AS col3
>  FROM (SELECT foo.val1 AS col1
>             , long_calculation(foo.val1) AS col2
>          FROM foo) AS tab;
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faqs/FAQ.html 


In response to

Responses

pgsql-sql by date

Next:From: sadDate: 2004-10-21 11:58:35
Subject: Offtopic: psql
Previous:From: Gifford HeskethDate: 2004-10-20 22:03:22
Subject: "copy from" in "create function"

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group