如何在 MySQL 中找出一个月的天数?
mysqlmysqli database
要找出一个月的天数,请使用以下语法。
select DAY(LAST_DAY(yourColumnName)) as anyVariableName from yourTableName;
为了理解上述语法,让我们首先创建一个表。创建表的查询如下。
mysql> create table DaysInaGivenMonth -> ( -> MonthName datetime -> ); Query OK, 0 rows affected (1.62 sec)
使用 insert 命令在表中插入一些记录。 查询语句如下。
mysql> insert into DaysInaGivenMonth values(now()); Query OK, 1 row affected (0.24 sec) mysql> insert into DaysInaGivenMonth values(date_add(now(),interval -1 month)); Query OK, 1 row affected (0.16 sec) mysql> insert into DaysInaGivenMonth values(date_add(now(),interval -2 month)); Query OK, 1 row affected (0.10 sec) mysql> insert into DaysInaGivenMonth values(date_add(now(),interval -3 month)); Query OK, 1 row affected (0.20 sec) mysql> insert into DaysInaGivenMonth values(date_add(now(),interval -4 month)); Query OK, 1 row affected (0.23 sec) mysql> insert into DaysInaGivenMonth values(date_add(now(),interval -5 month)); Query OK, 1 row affected (0.15 sec)
使用 select 语句显示表中的所有记录。查询如下。
mysql> select *from DaysInaGivenMonth;
以下是输出。
+---------------------+ | MonthName | +---------------------+ | 2019-01-01 21:34:26 | | 2018-12-01 21:34:55 | | 2018-11-01 21:35:14 | | 2018-10-01 21:35:20 | | 2018-09-01 21:35:23 | | 2018-08-01 21:35:27 | +---------------------+ 6 rows in set (0.00 sec)
以下查询用于找出上面列出的月份中的天数。
mysql> select DAY(LAST_DAY(MonthName)) as DaysInMonth from DaysInaGivenMonth;
以下是输出。
+-------------+ | DaysInMonth | +-------------+ | 31 | | 31 | | 30 | | 31 | | 30 | | 31 | +-------------+ 6 rows in set (0.00 sec)