ateneva
5/21/2017 - 7:20 PM

How to find the last day of a month

How to find the last day of a month


---------------------------------SQL Server-------------------------------------------------------------------------

select

convert(date,getdate()) as Today,
eomonth(getdate(),-1)   as LastDayPreviousMonth,
eomonth(getdate(),+0)   as LastDayThisMonth,
eomonth(getdate(),+1)   as LastDayNextMonth


Today      |LastDayPreviousMonth |LastDayThisMonth |LastDayNextMonth |
-----------|---------------------|-----------------|-----------------|
2017-11-18 |2017-10-31           |2017-11-30       |2017-12-31       |

---------------------------------Vertica----------------------------------------------------------------------------

select 

now()                          as Today
last_day(Now())                as LastDayofCurrentMonth,     
last_day(add_months(Now(),-1)) as LastDayofPreviousMonth,     
last_day(add_months(Now(), 1)) as LastDayofNextMonth           


Today      |LastDayPreviousMonth |LastDayThisMonth |LastDayNextMonth |
-----------|---------------------|-----------------|-----------------|
2017-11-18 |2017-10-31           |2017-11-30       |2017-12-31       |


#--------------------------------MySQL-------------------------------------------------------------------------------

select

date(now())                   as Today,
last_day(adddate(Now(), -31)) as LastDayPreviousMonth,
last_day(Now())               as LastDayThisMonth,
last_day(adddate(Now(), +31)) as LastDayNextMonth


Today      |LastDayPreviousMonth |LastDayThisMonth |LastDayNextMonth |
-----------|---------------------|-----------------|-----------------|
2017-11-18 |2017-10-31           |2017-11-30       |2017-12-31       |


---------------------------------PostgreSQL----------------------------------------------------------------------------

select

Date(Now()) as Today,
Date(date_trunc('month', Now() + interval '0 month') - interval '1 day')  as LastDayPreviousMonth,
Date(date_trunc('month', Now() + interval '1 month') - interval '1 day')  as LastDayThisMonth,
Date(date_trunc('month', Now() + interval '2 month') - interval '1 day')  as LastDayNextMonth


today      |lastdaypreviousmonth |lastdaythismonth |lastdaynextmonth |
-----------|---------------------|-----------------|-----------------|
2017-11-18 |2017-10-31           |2017-11-30       |2017-12-31       |