TIMESTAMPDIFF
更新时间:2025-10-17
描述
timestampdiff
函数用于计算两个日期之间的差值,返回两个日期之间的时间间隔。可以计算两者之间的差异,以指定的时间单位(如秒、分钟、小时、天、月、年等)返回结果。
语法
TIMESTAMPDIFF(<unit>, <datetime_expr1>, <datetime_expr2>)
参数
参数 | 说明 |
---|---|
unit |
时间单位,指定要返回差异的单位,常见的值有 SECOND、MINUTE、HOUR、DAY、MONTH、YEAR 等 |
datetime_expr1 |
第一个日期时间,合法的日期格式 |
datetime_expr2 |
第二个日期时间,合法的日期格式 |
返回值
返回两个日期时间之间的差异,单位根据 unit 参数确定。
如果输入的参数不合法,则返回 NULL
举例
SQL
1SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
Text
1+--------------------------------------------------------------------+
2| timestampdiff(MONTH, '2003-02-01 00:00:00', '2003-05-01 00:00:00') |
3+--------------------------------------------------------------------+
4| 3 |
5+--------------------------------------------------------------------+
SQL
1SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
Text
1+-------------------------------------------------------------------+
2| timestampdiff(YEAR, '2002-05-01 00:00:00', '2001-01-01 00:00:00') |
3+-------------------------------------------------------------------+
4| -1 |
5+-------------------------------------------------------------------+
SQL
1SELECT TIMESTAMPDIFF(MINUTE,'2003-02-01','2003-05-01 12:05:55');
Text
1+---------------------------------------------------------------------+
2| timestampdiff(MINUTE, '2003-02-01 00:00:00', '2003-05-01 12:05:55') |
3+---------------------------------------------------------------------+
4| 128885 |
5+---------------------------------------------------------------------+
SQL
1SELECT TIMESTAMPDIFF(MINUTE,'2003-02-01','1196440219');
Text
1+-----------------------------------------------------------------------------------+
2| timestampdiff(MINUTE, '2003-02-01 00:00:00', CAST('1196440219' AS datetimev2(6))) |
3+-----------------------------------------------------------------------------------+
4| NULL |
5+-----------------------------------------------------------------------------------+