◆ first_day
DROP FUNCTION first_day( DATE );
CREATE FUNCTION first_day( DATE ) RETURNS DATE AS
'select cast(date_trunc(''month'', $1) as date)'
LANGUAGE 'sql';
◆ last_day
DROP FUNCTION last_day( DATE );
CREATE FUNCTION last_day( DATE ) RETURNS DATE AS
'select cast(date_trunc(''month'', $1) + interval ''1 month - 1 day'' as date)'
LANGUAGE 'sql';