如何在 MySQL 中从当前日期时间中减去 30 天?

mysqlmysqli database

要从当前日期时间中减去 30 天,首先我们需要获取有关当前日期时间的信息,然后使用 MySQL 中的 now() 方法。now() 给出当前日期时间。

用于此目的的方法是 MySQL 中的 DATE_SUB()。以下是从当前日期时间中减去 30 天的语法。

语法如下 −

DATE_SUB(NOW(),INTERVAL 30 DAY);

上述语法首先计算当前日期时间,然后在下一步中减去 30 天。让我们首先查看获取当前日期时间的查询 −

mysql> select now();

这是输出 −

+---------------------+
| now()               |
+---------------------+
| 2018-11-23 16:38:43 |
+---------------------+
1 row in set (0.00 sec)

现在,让我们使用 date_sub() 方法减去 30 天。查询如下 −

mysql> select date_sub(now(),interval 30 day);

以下是显示减去 30 天后的日期的输出 −

+---------------------------------+
| date_sub(now(),interval 30 day) |
+---------------------------------+
| 2018-10-24 16:38:50             |
+---------------------------------+
1 row in set (0.00 sec)

如果要仅获取结果中的日期值,可以使用 curdate() 代替 now()。以下是 curdate() 的演示。

查询如下 −

mysql> select date_sub(curdate(),interval 30 day);

以下是输出 −

+-------------------------------------+
| date_sub(curdate(),interval 30 day) |
+-------------------------------------+
| 2018-10-24                          |
+-------------------------------------+
1 row in set (0.00 sec)

相关文章