'k, this doesn't look right, but it could be that I'm overlooking
something ...
The function I created:
CREATE FUNCTION month_trunc (timestamp without time zone) RETURNS timestamp without time zone AS 'SELECT
date_trunc(''month'',$1 )' LANGUAGE sql IMMUTABLE;
The query that fails:
ams=# select * from traffic_logs where month_trunc(runtime) = month_trunc(now());
ERROR: Function month_trunc(timestamp with time zone) does not exist Unable to identify a function that
satisfiesthe given argument types You may need to add explicit typecasts
The query that succeeds:
ams=# explain select * from traffic_logs where month_trunc(runtime) = '2003-10-01';
QUERY PLAN
-------------------------------------------------------------------------------------------Index Scan using tl_month on
traffic_logs (cost=0.00..30751.90 rows=8211 width=36) Index Cond: (month_trunc(runtime) = '2003-10-01
00:00:00'::timestampwithout time zone)
(2 rows)
I haven't mis-spelt anything that I can see ... is this something that is
known not to be doable?