>I've seen this as well be a performance issue, in particular with partitioned 
>tables.
>Out of habit I now write functions that always cache the value of the function 
>in
>a variable and use the variable in the actual query to avoid this particular 
>"gotcha".

subquery may be used to cache constants:

SELECT a_date
  FROM test
  WHERE a_date=(SELECT current_date);


"Seq Scan on test1  (cost=0.01..10.76 rows=5 width=4)"
"  Filter: (a_date = $0)"
"  InitPlan 1 (returns $0)"
"    ->  Result  (cost=0.00..0.01 rows=1 width=0)"


------------
pasman

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to