Sprawdź następującą technikę w MySQL, jeśli chcesz dowiedzieć się, ile dni jest w miesiącu w oparciu o podaną datę.
Przykład
Najłatwiej to wyjaśnić na przykładzie:
SELECT DAYOFMONTH(LAST_DAY('2030-04-15'));
Wynik:
30
Tutaj przekazaliśmy LAST_DAY()
funkcji DAYOFMONTH()
funkcjonować.
Przekazaliśmy więc datę do LAST_DAY()
funkcja w celu uzyskania daty ostatniego dnia miesiąca. Następnie użyliśmy DAYOFMONTH()
funkcja zwracająca tylko numer dnia ostatniego dnia.
Oto przykład, który obejmuje wszystkie miesiące w roku:
SELECT
DAYOFMONTH(LAST_DAY('2030-01-15')) AS "Jan",
DAYOFMONTH(LAST_DAY('2030-02-15')) AS "Feb",
DAYOFMONTH(LAST_DAY('2030-03-15')) AS "Mar",
DAYOFMONTH(LAST_DAY('2030-04-15')) AS "Apr",
DAYOFMONTH(LAST_DAY('2030-05-15')) AS "May",
DAYOFMONTH(LAST_DAY('2030-06-15')) AS "Jun",
DAYOFMONTH(LAST_DAY('2030-07-15')) AS "Jul",
DAYOFMONTH(LAST_DAY('2030-08-15')) AS "Aug",
DAYOFMONTH(LAST_DAY('2030-09-15')) AS "Sep",
DAYOFMONTH(LAST_DAY('2030-10-15')) AS "Oct",
DAYOFMONTH(LAST_DAY('2030-11-15')) AS "Nov",
DAYOFMONTH(LAST_DAY('2030-12-15')) AS "Dec";
Wynik:
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 31 28 31 30 31 30 31 31 30 31 30 31