如何在 MySQL 中从当前 datetime 减去 30 天?


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

要用于此方法的方法是 MySQL 中的 DATE_SUB()。以下是在当前 datetime 中减去 30 天的语法。

语法如下 -

DATE_SUB(NOW(),INTERVAL 30 DAY);

上述语法首先计算当前 datetime,然后在下一步中减去 30 天。让我们首先查询当前 datetime:

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)

更新于: 2019 年 7 月 30 日

4 千+ 次浏览

开启你的职业生涯

通过完成课程获得认证

开始
广告