MySQL

MySQLのDAYOFMONTH()関数を使うと、月に存在している日かどうかを確認できます。

DAYOFMONTH()関数は、存在しない日を指定した場合は、NULLを返します。

存在する日

mysql> SELECT DAYOFMONTH('2020-02-29');
+--------------------------+
| DAYOFMONTH('2020-02-29') |
+--------------------------+
|                       29 |
+--------------------------+
1 row in set (0.00 sec)

存在しない日

mysql> SELECT DAYOFMONTH('2020-02-30');
+--------------------------+
| DAYOFMONTH('2020-02-30') |
+--------------------------+
|                     NULL |
+--------------------------+
1 row in set, 1 warning (0.00 sec)