介绍
MySQL INTERVAL() 函数是MySQL数据库中的一个日期时间函数,用于添加或减少给定日期的时间间隔。该函数的常规语法如下:
INTERVAL(value,unit)
该函数接收两个参数:
value: 用于给定时间间隔的值。
unit: 用于给定时间间隔的时间单位。包括:MICROSECOND(微秒)、SECOND(秒)、MINUTE(分钟)、HOUR(小时)、DAY(天)、WEEK(周)、MONTH(月)以及YEAR(年)。
下面我们将介绍如何在MySQL中使用该函数。
使用方法
1、添加时间间隔
有时,我们需要为给定的日期添加一个时间间隔。比如,我们要为某个日期增加5天,则可以使用如下语句:
SELECT DATE_ADD('2022-06-08', INTERVAL 5 DAY);
该语句将给定的日期 "2022-06-08" 增加了5天,结果输出为:
2022-06-13
需要注意的是,DATE_ADD() 函数也可以用于给其他时间类型添加时间间隔,例如使用以下函数来给指定时间添加时间间隔:
SELECT ADDTIME('12:30:00', INTERVAL '2' HOUR);
该语句将给定的时间 "12:30:00" 增加了 2 个小时,结果输出为:
14:30:00
2、减少时间间隔
除了添加时间间隔,我们有时还需要减少给定日期的时间。在MySQL中,可以使用DATE_SUB() 函数实现该目的。例如,我们要为某个日期减去10天,则可以使用如下语句:
SELECT DATE_SUB('2022-06-08', INTERVAL 10 DAY);
该语句将给定的日期 "2022-06-08" 减去10天,结果输出为:
2022-05-29
需要注意的是,DATE_SUB() 函数也可以用于给其他时间类型减少时间间隔,例如使用以下函数来给指定时间减少时间间隔:
SELECT SUBTIME('13:30:00', INTERVAL '2' HOUR);
该语句将给定的时间 "13:30:00" 减少了2个小时,结果输出为:
11:30:00
3、计算两个日期之间的时间间隔
除了添加和减少时间间隔外,MySQL INTERVAL() 函数还可以用于计算两个日期之间的时间间隔。例如,我们要计算2019年1月1日到2019年6月1日之间的天数,则可以使用如下语句:
SELECT DATEDIFF('2019-06-01', '2019-01-01');
该语句将计算 2019年1月1日与2019年6月1日之间的天数,结果输出为:
151
需要注意的是,DATEDIFF() 函数可以用于计算其他时间类型之间的时间差,如计算两个日期之间的小时数,则可以使用以下函数:
SELECT TIMESTAMPDIFF(HOUR, '2022-06-08 14:00:00', '2022-06-09 16:00:00');
该语句将计算给定日期之间的小时数,结果输出为:
26
4、使用时间单位缩写
MySQL INTERVAL() 函数中,我们还可以使用时间单位的缩写来代替完整的时间单位名称,从而使语句更加简洁。例如,使用缩写 DAY 可以简化如下的语句:
SELECT DATE_ADD('2022-06-08', INTERVAL 5 day);
需要注意的是,使用时间单位的缩写必须与值之间没有空格。
结束语
MySQL INTERVAL() 函数是MySQL数据库中非常常见的日期时间函数之一,它可以用于在日期中添加或减少时间间隔,计算两个日期之间的时间间隔,以及使用时间单位缩写等功能。掌握其使用方法可以帮助我们在MySQL开发工作中更好地应用日期时间相关的功能。