Is there a better way than this to get the start and end of a month? - Mailing list pgsql-sql

From David Stanaway
Subject Is there a better way than this to get the start and end of a month?
Date
Msg-id 1032672769.21707.62.camel@ciderbox
Whole thread Raw
List pgsql-sql
Here are the 2 functions I have at the moment. I was wondering if
someone had a better way?

CREATE OR REPLACE FUNCTION month_start (date) RETURNS date AS '  DECLARE   day ALIAS FOR $1;  BEGIN   RETURN day -
(extract(''day''FROM day)||'' days'')::interval + ''1 day''::interval;            END; ' LANGUAGE 'plpgsql';
 

CREATE OR REPLACE FUNCTION month_end (date) RETURNS date AS '  DECLARE   day ALIAS FOR $1;   month int;   year int;
BEGIN  month := extract(''month'' FROM day);   year  := extract(''year'' FROM day);   IF month = 12 THEN    month := 1;
  year  := year +1;   ELSE    month := month +1;   END IF;   RETURN (''01-''||month||''-''||year)::date - ''1
day''::interval;  END;  '  LANGUAGE 'plpgsql';
 

-- 
David Stanaway


pgsql-sql by date:

Previous
From: "Rajesh Kumar Mallah."
Date:
Subject: Appending to an array[] feild...[ ltree ]
Next
From: Bruce Momjian
Date:
Subject: Re: [GENERAL] Monitoring a Query