Select first day of preceding month in (DB2) SQL Select first day of preceding month in (DB2) SQL database database

Select first day of preceding month in (DB2) SQL


First Day of the Current Month:

CURRENT_DATE - (DAY(CURRENT_DATE)-1) DAYS 

First of the Current Year is

CURRENT_DATE - (DAY(CURRENT_DATE)-1) DAYS - (MONTH(CURRENT_DATE)-1) MONTHS 

Last Day of the Last Month:

CURRENT_DATE - DAY(CURRENT_DATE) DAYS 

First Day of the Last Month:

CURRENT_DATE - (DAY(CURRENT_DATE)-1) DAYS - 1 MONTH 


First day of this year:

date('0001-01-01') + year(current date) years - 1 year

First day of this month:

date('0001-01-01') + year(current date) years - 1 year + month(current date) months - 1 month

First day of last month:

date('0001-01-01') + year(current date) years - 1 year + month(current date) months - 2 months


Here are snippets from my DB2 SQL Month Calculation Cheat Sheet:

Beginning of Current Month:

CURRENT DATE + 1 DAYS - DAY(CURRENT DATE) DAYS

End of Current Month:

LAST_DAY(CURRENT DATE)

Beginning of Prior Month:

CURRENT DATE + 1 DAYS - DAY(CURRENT DATE) DAYS - 1 MONTHS

End of Prior Month:

LAST_DAY(CURRENT DATE - 1 MONTHS)

Beginning of Next Month:

CURRENT DATE + 1 DAYS - DAY(CURRENT DATE) DAYS + 1 MONTHS

End of Next Month:

LAST_DAY(CURRENT DATE + 1 MONTHS)