从 MariaDB 中的日期时间值中减去秒数
发布于
以下是一些从 MariaDB 中的日期时间表达式中减去一秒或多秒的选项。
函数SUBTIME()
从时间或日期时间值中减去给定的时间量。SUBTIME()
例:
SELECT SUBTIME('2021-05-01 10:00:00', '00:00:30');
输出:
+--------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '00:00:30') |
+--------------------------------------------+
| 2021-05-01 09:59:30 |
+--------------------------------------------+您还可以更改其他时间单位,例如小时、分钟等。
函数DATE_SUB()
该函数允许您从日期或日期时间表达式中减去一定数量的日期/时间单位。因此,我们可以使用此函数返回日期时间值,减去一定的秒数。DATE_SUB()
例:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND);
输出:
+-----------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND) |
+-----------------------------------------------------+
| 2021-05-01 09:59:30 |
+-----------------------------------------------------+请注意,无论您减去一秒还是更长时间,关键字都保持非复数。SECOND
您还可以使用复合日期和时间单位。例如,您可以一次性完成几分钟和几秒钟。
例:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND);
输出:
+-----------------------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) |
+-----------------------------------------------------------------+
| 2021-05-01 09:44:30 |
+-----------------------------------------------------------------+只传递日期
如果我们只提供日期值,会发生什么情况:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 SECOND);
输出:
+--------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 30 SECOND) |
+--------------------------------------------+
| 2021-04-30 23:59:30 |
+--------------------------------------------+它假设时间从 00:00:00 开始,因此从中减去金额。SECOND
减法运算符 (-)
从日期时间值中减去一个或多个秒的另一种方法是使用减法运算符 (),也称为减号运算符。-
例:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 SECOND;
输出:
+--------------------------------------------+
| '2021-05-01 10:00:00' - INTERVAL 30 SECOND |
+--------------------------------------------+
| 2021-05-01 09:59:30 |
+--------------------------------------------+加法运算符 (+)
您也可以使用加法运算符 () 和负量。+
例:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 SECOND;
输出:
+---------------------------------------------+
| '2021-05-01 10:00:00' + INTERVAL -30 SECOND |
+---------------------------------------------+
| 2021-05-01 09:59:30 |
+---------------------------------------------+减去秒的其他方法
下面是一些可用于从日期时间值中减去一秒或多秒的其他方法:
- 函数。
SUBTIME() - 该函数(提供负量将从日期时间值中减去该金额)。
ADDTIME() - 函数(当与相同的语法一起使用时,这是同义词)。
SUBDATE()DATE_SUB() - 该函数(提供负量将从日期时间值中减去该金额)。
DATE_ADD() - 该函数(提供负量将从日期时间值中减去该金额)。
ADDDATE()