一、MySQL 中常用的日期函数
MySQL 中提供了丰富的日期函数,可用于处理日期和时间相关的业务需求。本文将为大家介绍常用的日期函数,并附有详细的示例代码和输出结果。
1. ADDDATE() 和 DATE_ADD()
ADDDATE()
和 DATE_ADD()
函数都可以在一个日期上加上一定数量的天数,它们的语法分别如下:
ADDDATE(date, INTERVAL expr unit) DATE_ADD(date, INTERVAL expr unit)
其中,date
表示要加减的日期,expr
表示要加减的数量,unit
表示数量的单位,可以是 DAY
、WEEK
、MONTH
或 YEAR
等。
以下是示例代码及输出结果:
SELECT ADDDATE('2022-05-01', INTERVAL 10 DAY); -- 输出: '2022-05-11' SELECT DATE_ADD('2022-05-01', INTERVAL 10 DAY); -- 输出: '2022-05-11'
2. SUBDATE() 和 DATE_SUB()
SUBDATE()
和 DATE_SUB()
函数都可以在一个日期上减去一定数量的天数,它们的语法分别如下:
SUBDATE(date, INTERVAL expr unit) DATE_SUB(date, INTERVAL expr unit)
以下是示例代码及输出结果:
SELECT SUBDATE('2022-05-11', INTERVAL 10 DAY); -- 输出: '2022-05-01' SELECT DATE_SUB('2022-05-11', INTERVAL 10 DAY); -- 输出: '2022-05-01'
3. DATEDIFF()
DATEDIFF()
函数可以计算两个日期之间相差的天数,它的语法如下:
DATEDIFF(end_date, start_date)
其中,end_date
和 start_date
分别表示结束日期和开始日期。
以下是示例代码及输出结果:
SELECT DATEDIFF('2022-05-11', '2022-05-01'); -- 输出: 10
4. DAY()、MONTH() 和 YEAR()
DAY()
、MONTH()
和 YEAR()
函数可以分别从一个日期中提取出其对应的日、月和年,它们的语法如下:
DAY(date) MONTH(date) YEAR(date)
以下是示例代码及输出结果:
SELECT DAY('2022-05-31'); -- 输出: 31 SELECT MONTH('2022-05-31'); -- 输出: 5 SELECT YEAR('2022-05-31'); -- 输出: 2022
5. DATE_FORMAT()
DATE_FORMAT()
函数可以将日期格式化为指定的字符串格式,它的语法如下:
DATE_FORMAT(date, format)
其中,date
表示要格式化的日期,format
是指定的格式字符串,常用的格式有 %Y-%m-%d
(年-月-日)、%H:%i:%s
(时:分:秒)等。
以下是示例代码及输出结果:
SELECT DATE_FORMAT('2022-05-31', '%Y-%m-%d'); -- 输出: '2022-05-31' SELECT DATE_FORMAT('2022-05-31 12:34:56', '%H:%i:%s'); -- 输出: '12:34:56'
6. NOW()
NOW()
函数返回当前日期和时间,它的语法如下:
NOW()
以下是示例代码及输出结果:
SELECT NOW(); -- 输出: '2023-05-31 08:09:15'
二、总结概述
本文介绍了 MySQL 中常用的日期函数,包括 ADDDATE()
、DATE_ADD()
、SUBDATE()
、DATE_SUB()
、DATEDIFF()
、DAY()
、MONTH()
、YEAR()
、DATE_FORMAT()
和 NOW()
等。这些函数可以帮助我们方便地处理日期和时间相关的业务需求。
以上是示例代码及输出结果,运行效果请自行尝试。