欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一篇整理MYSQL常用日期函数的文章,先收藏,以便不时之需

程序员文章站 2022-05-29 22:45:36
...

文章仅供参考,不包含全部函数

MySQL常用的日期函数(标★号为很常用)

1.ADDDATE(d,n):计算起始日期 d 加上 n 天的日期

例:SELECT ADDDATE("2017-06-15", INTERVAL 10 DAY); --2017-06-25

2.ADDTIME(t,n):时间 t 加上 n 秒的时间

例:SELECT ADDTIME('2011-11-11 11:11:11', 5) --2011-11-11 11:11:16 (秒)

3.CURDATE()/CURRENT_DATE():返回当前日期

例:SELECT CURDATE(); --2018-09-19
例:SELECT CURRENT_DATE(); --2018-09-19

4.CURTIME()/CURRENT_TIME:返回当前时间

例:SELECT CURTIME(); --19:59:02
例:SELECT CURRENT_TIME(); --19:59:02

5.CURRENT_TIMESTAMP():返回当前日期和时间

例:SELECT CURRENT_TIMESTAMP(); --2018-09-19 20:57:43

6.★DATE():从日期或日期时间表达式中提取日期值

例:SELECT DATE("2017-06-15"); --2017-06-15

7.★DATEDIFF(d1,d2):计算日期 d1->d2 之间相隔的天数

例:SELECT DATEDIFF('2001-01-01','2001-02-02') --32

8.★★★DATE_FORMAT(d,f):按表达式 f的要求显示日期 d(表达式见文章末尾)

例:SELECT DATE_FORMAT('2020-01-01 11:11:11','%Y-%m-%d') --2020-01-01

9.★DAY(d):返回日期值 d 的日期部分

例:SELECT DAY("2017-06-15"); ---15

10.★DAYNAME(d):返回日期 d 是星期几,如 Monday,Tuesday

例:SELECT DAYNAME('2011-11-11 11:11:11') --Friday

11.★DAYOFMONTH(d):计算日期 d 是本月的第几天

例:SELECT DAYOFMONTH('2011-11-11 11:11:11') --11

12.★DAYOFWEEK(d):日期 d 今天是星期几,1 星期日,2 星期一,以此类推

例:SELECT DAYOFWEEK('2019-12-24') --3 就是星期二

13.★LOCALTIME()/NOW()/SYSDATE():返回当前日期和时间

例:SELECT LOCALTIME() --2019-12-24 17:39:57

例:SELECT NOW() --2019-12-24 17:39:57

14.★STR_TO_DATE(string, f):将字符串转变为日期(f表达式见文章末尾)

例:SELECT STR_TO_DATE("2019-12-24 17:39:57", "%Y-%m-%d"); --2019-12-24

15.★TIME_FORMAT(t,f):按表达式 f 的要求显示时间 t(f表达式见文章末尾)

例:SELECT TIME_FORMAT('11:11:11','%r') --11:11:11 AM

16.★TIMEDIFF(time1, time2):计算时间差值

例:SELECT TIMEDIFF("13:10:11", "13:10:10"); --00:00:01

17.★YEAR(d):返回年份

例:SELECT YEAR("2017-06-15"); --2017

format 表达式

可以使用的格式有:
格式 描述
%a 缩写星期名
%b 缩写月名
%c 月,数值
%D 带有英文前缀的月中的天
%d 月的天,数值(00-31)
%e 月的天,数值(0-31)
%f 微秒
%H 小时 (00-23)
%h 小时 (01-12)
%I 小时 (01-12)
%i 分钟,数值(00-59)
%j 年的天 (001-366)
%k 小时 (0-23)
%l 小时 (1-12)
%M 月名
%m 月,数值(00-12)
%p AM 或 PM
%r 时间,12-小时(hh:mm:ss AM 或 PM)
%S 秒(00-59)
%s 秒(00-59)
%T 时间, 24-小时 (hh:mm:ss)
%U 周 (00-53) 星期日是一周的第一天
%u 周 (00-53) 星期一是一周的第一天
%V 周 (01-53) 星期日是一周的第一天,与 %X 使用
%v 周 (01-53) 星期一是一周的第一天,与 %x 使用
%W 星期名
%w 周的天 (0=星期日, 6=星期六)
%X 年,其中的星期日是周的第一天,4 位,与 %V 使用
%x 年,其中的星期一是周的第一天,4 位,与 %v 使用
%Y 年,4%y 年,2
相关标签: mysql