Re: 7.4 Wishlist
От | Magnus Naeslund(f) |
---|---|
Тема | Re: 7.4 Wishlist |
Дата | |
Msg-id | 0a1a01c29a8a$d1da6370$f80c0a0a@mnd обсуждение исходный текст |
Ответ на | Re: 7.4 Wishlist (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: 7.4 Wishlist
Re: 7.4 Wishlist Re: 7.4 Wishlist |
Список | 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 по дате отправления: