MySQL的日期和时间函数攻略
MySQL提供了很多丰富的日期和时间函数,这些函数可以用于处理日期和时间数据,在开发过程中十分重要。下面是MySQL的日期和时间函数清单:
日期函数
CURDATE()
返回当前日期。它没有参数并且返回 DATE 类型值。
SELECT CURDATE(); -- 2021-06-28
NOW()
返回当前日期和时间。它没有参数并且返回一个 DATETIME 类型的值。
SELECT NOW(); -- 2021-06-28 10:25:57
DATE_ADD()
在一个日期上添加指定的时间间隔。第一个参数是一个日期或日期时间类型,第二个参数是一个时间间隔,第三个参数是一个可选参数,表示要添加的日期时间部分。返回结果与第一个参数具有相同的类型。
SELECT DATE_ADD('2021-06-28', INTERVAL 1 DAY); -- 2021-06-29
SELECT DATE_ADD('2021-06-28 10:30:00', INTERVAL 2 HOUR); -- 2021-06-28 12:30:00
DATE_SUB()
在一个日期上减去指定的时间间隔。第一个参数是一个日期或日期时间类型,第二个参数是一个时间间隔,第三个参数是一个可选参数,表示要添加的日期时间部分。返回结果与第一个参数具有相同的类型。
SELECT DATE_SUB('2021-06-28', INTERVAL 2 DAY); -- 2021-06-26
SELECT DATE_SUB('2021-06-28 10:30:00', INTERVAL 1 HOUR); -- 2021-06-28 09:30:00
时间函数
CURTIME()
返回当前时间。它没有参数并且返回一个 TIME 类型的值。
SELECT CURTIME(); -- 18:37:22
TIME()
将一个时间部分的字符串转换为时间。它的参数是时间字符串和一个可选的格式化字符串。
SELECT TIME('10:30:45'); -- 10:30:45
SELECT TIME('2021-06-28 10:30:45'); -- 10:30:45
ADDTIME()
在一个时间上添加指定的时间间隔。第一个参数是一个时间类型,第二个参数是一个时间间隔。返回结果与第一个参数具有相同的类型。
SELECT ADDTIME('10:30:00', '01:30:00'); -- 12:00:00
SUBTIME()
在一个日期上减去指定的时间间隔。第一个参数是一个日期或日期时间类型,第二个参数是一个时间间隔。返回结果与第一个参数具有相同的类型。
SELECT SUBTIME('10:30:00', '01:30:00'); -- 09:00:00
示例说明
- 假设我们需要计算某个订单发货后的到达时间,可以使用DATE_ADD函数来求解。比如,订单在6月28日发货,运输时间为2天,到达的日期是多少?
SELECT DATE_ADD('2021-06-28', INTERVAL 2 DAY); -- 2021-06-30
- 假设我们需要计算用户注册时间与当前时间的时间差,可以使用NOW和TIMESTAMPDIFF函数来求解。比如,用户在2021年6月15日注册,现在是2021年6月28日,求注册时间和当前时间相差多少天?
SELECT TIMESTAMPDIFF(DAY, '2021-06-15', NOW()); -- 13
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql的日期和时间函数大全第1/2页 - Python技术站