Bruce Momjian <[EMAIL PROTECTED]> 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 ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly