MySQL提供了丰富的函数来获取当前时间以及进行时间计算,下面我会详细讲解如何使用这些函数来实现取前后指定时间段的查询。
1. 获取当前时间
在MySQL中,可以使用NOW()
函数来获取当前的日期和时间,它的返回值是一个DATETIME
类型。
SELECT NOW();
执行上面的语句会输出如下结果:
+---------------------+
| NOW() |
+---------------------+
| 2021-04-20 14:36:30 |
+---------------------+
2. 获取指定时间段之前或之后的时间点
2.1. 使用DATE_ADD函数
我们可以使用DATE_ADD()
函数对当前时间进行加减操作,获得指定时间段之前或之后的时间点。下面列举几个例子。
2.1.1. 取当前时间30秒之前的时间点
SELECT DATE_SUB(NOW(), INTERVAL 30 SECOND);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_SUB(NOW(), INTERVAL 30 SECOND) |
+--------------------------------+
| 2021-04-20 14:35:51 |
+--------------------------------+
2.1.2. 取当前时间15分钟之前的时间点
SELECT DATE_SUB(NOW(), INTERVAL 15 MINUTE);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_SUB(NOW(), INTERVAL 15 MINUTE) |
+--------------------------------+
| 2021-04-20 14:21:30 |
+--------------------------------+
2.1.3. 取当前时间1小时之前的时间点
SELECT DATE_SUB(NOW(), INTERVAL 1 HOUR);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_SUB(NOW(), INTERVAL 1 HOUR) |
+--------------------------------+
| 2021-04-20 13:36:30 |
+--------------------------------+
2.2. 使用DATE_SUB函数
除了使用DATE_ADD()
函数,我们也可以使用DATE_SUB()
函数进行时间计算。它的用法与DATE_ADD()
类似,只不过是用减法操作。
2.2.1. 取当前时间5秒之后的时间点
SELECT DATE_ADD(NOW(), INTERVAL 5 SECOND);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_ADD(NOW(), INTERVAL 5 SECOND) |
+--------------------------------+
| 2021-04-20 14:36:35 |
+--------------------------------+
2.2.2. 取当前时间2小时之后的时间点
SELECT DATE_ADD(NOW(), INTERVAL 2 HOUR);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_ADD(NOW(), INTERVAL 2 HOUR) |
+--------------------------------+
| 2021-04-20 16:36:30 |
+--------------------------------+
2.2.3. 取当前时间3天之后的时间点
SELECT DATE_ADD(NOW(), INTERVAL 3 DAY);
执行上面的语句会输出如下结果:
+--------------------------------+
| DATE_ADD(NOW(), INTERVAL 3 DAY) |
+--------------------------------+
| 2021-04-23 14:36:30 |
+--------------------------------+
以上就是使用MySQL函数来变革获取当前时间以及取前后指定时间段的查询的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql 数据库取前后几秒 几分钟 几小时 几天的语句 - Python技术站