Dates & time
Scalar
last_day()
Returns the last day of the month
Arguments & returns
3 overloadslast_day(ts)
Scalar
Example
Haybarn WASM 1.5.5-rc3 · In your browser
Engine example · Run to view results.
In other engines
BigQuery
SELECT LAST_DAY(CAST('2008-11-25' AS DATE), MONTH)
SELECT LAST_DAY(CAST('2008-11-25' AS DATE))
Presto
SELECT LAST_DAY_OF_MONTH(CAST('2008-11-25' AS DATE))
SELECT LAST_DAY(CAST('2008-11-25' AS DATE))
Snowflake
LAST_DAY(CAST('2023-04-15' AS DATE))
LAST_DAY(CAST('2023-04-15' AS DATE))
Used in larger rewrites 1
These examples use last_day as one part of a larger SQL translation.
Apache Sparkmonths_between()
SELECT MONTHS_BETWEEN('1997-02-28 10:30:00', '1996-10-30')
SELECT DATE_DIFF('MONTH', CAST('1996-10-30' AS DATE), CAST('1997-02-28 10:30:00' AS DATE)) + CASE WHEN DAY(CAST('1997-02-28 10:30:00' AS DATE)) = DAY(LAST_DAY(CAST('1997-02-28 10:30:00' AS DATE))) AND DAY(CAST('1996-10-30' AS DATE)) = DAY(LAST_DAY(CAST('1996-10-30' AS DATE))) THEN 0 ELSE (DAY(CAST('1997-02-28 10:30:00' AS DATE)) - DAY(CAST('1996-10-30' AS DATE))) / 31.0 END