MariaDB TIMESTAMPDIFF() 函数使用指南

在 MariaDB 中,TIMESTAMPDIFF() 是一个内置函数,它返回两个日期时间之间的差异。

MariaDB TIMESTAMPDIFF() 语法

这是 MariaDB TIMESTAMPDIFF() 函数的语法:

TIMESTAMPDIFF(unit, datetime1, datetime2)

参数

unit
必需的。时间间隔的单位,可用值有: MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR.
datetime1
必需的。一个 datetime 值或表达式。
datetime2
必需的。一个 datetime 值或表达式。

如果您提供了错误数量的参数,MariaDB 将报告一个错误:ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

返回值

MariaDB TIMESTAMPDIFF() 函数返回两个日期/日期时间之间的差异。

如果任何一个参数为 NULLTIMESTAMPDIFF() 函数将返回 NULL

MariaDB TIMESTAMPDIFF() 示例

示例 1 - 日期值

这个语句使用 MariaDB TIMESTAMPDIFF() 函数返回两个日期之间的天数:

SELECT TIMESTAMPDIFF(DAY, '2023-01-01', '2023-01-12');

输出:

+------------------------------------------------+
| TIMESTAMPDIFF(DAY, '2023-01-01', '2023-01-12') |
+------------------------------------------------+
|                                             11 |
+------------------------------------------------+

示例 2 - 日期时间值

这个语句使用 MariaDB TIMESTAMPDIFF() 函数返回两个日期之间的秒数:

SELECT TIMESTAMPDIFF(SECOND, '2023-01-01 10:12:13', '2023-01-01 10:12:14') Result;

输出:

+--------+
| Result |
+--------+
|      1 |
+--------

示例 3 - 负值

如果第一个时间晚于第二个参数,MariaDB TIMESTAMPDIFF() 函数将返回一个负值:

SELECT TIMESTAMPDIFF(DAY, '2023-01-12', '2023-01-01');

输出:

+------------------------------------------------+
| TIMESTAMPDIFF(DAY, '2023-01-12', '2023-01-01') |
+------------------------------------------------+
|                                            -11 |
+------------------------------------------------+

结论

在 MariaDB 中,TIMESTAMPDIFF() 是一个内置函数,它返回两个日期时间之间的差异。