Re: 7.4 Wishlist - Mailing list pgsql-hackers

From Magnus Naeslund(f)
Subject Re: 7.4 Wishlist
Date
Msg-id 0a1a01c29a8a$d1da6370$f80c0a0a@mnd
Whole thread Raw
In response to Re: 7.4 Wishlist  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: 7.4 Wishlist
Re: 7.4 Wishlist
Re: 7.4 Wishlist
List pgsql-hackers
Bruce Momjian <pgman@candle.pha.pa.us> wrote:
> Magnus Naeslund(f) wrote:
>>>  select id, sum(sum_col)||'/'||count(*) from table_name
>>> group by id;
>>>
>>> or
>>>
>>>  select table_name.id, sum(sum_col)||'/'||t2.count from table_name,
>>> (select id, count(*) as count from table_name group by id) as t2
>>> where table_name.id=t2.id group by table_name.id,t2.count;
>>>
>>
>> Give it up already, i was MAKING A POINT, not trying to make an
>> optimized count(*) thing :)
>> There are other examples that you cannot get around, that will be
>> evaluated more than once when a local "user variable" would make it
>> not need to.
>
> Here's an even slimmer query that makes a var:
>
> test=> select var1.* from (select 1) as var1;
> ?column?
> ----------
>         1
> (1 row)

Good!
Now convert this query so that it only evaluates the date_part thing
ONCE:

select t.id, date_part('days',now()-t.stamp) from table_name t where
date_part('days',now()-t.stamp) > 20;

I hope you all are kidding me in not seeing the real issue i'm trying to
show here.

Cheers
Magnus




pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: 7.4 Wishlist
Next
From: "Christopher Kings-Lynne"
Date:
Subject: Re: 7.4 Wishlist