【PostgreSQL】月末日を取得する(LAST_DAY)

PostgreSQL構文

月末日を取得する(LAST_DAY)

対象の日付から、月末の日を取得します。

例:2020/01/01を指定すると、2020/01/31が返ります。

 

使っている構文

月末を求めるためには、

例えば2月の月末日を求めたいなら、3月1日から1日引けば2月の月末日になるということです。

つまり引数の月の最初の日(○月1日)を取得し、+1月して、-1日すれば求めることができます。

 

そのためにこの関数では主に次の2つの構文を使っています。

① 月の最初の日を取得する

date_trunc('month',日付・タイムスタンプ)  -- 日付に対し、月の最初の日を取得する

② 月、日付を加算する

select current_date + cast('5 months' as INTERVAL);  --"2020-11-12 00:00:00"
select current_date + cast('5 days' as INTERVAL);    --"2020-06-17 00:00:00"