前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【重学 MySQL】三十二、日期时间函数

【重学 MySQL】三十二、日期时间函数

作者头像
用户11332765
发布2024-10-28 17:10:07
660
发布2024-10-28 17:10:07
举报
文章被收录于专栏:编程
【重学 MySQL】三十二、日期时间函数

获取日期、时间

函数

用法

CURDATE() ,CURRENT_DATE()

返回当前日期,只包含年、月、日

CURTIME() , CURRENT_TIME()

返回当前时间,只包含时、分、秒

NOW() / SYSDATE() / CURRENT_TIMESTAMP() / LOCALTIME() / LOCALTIMESTAMP()

返回当前系统日期和时间

UTC_DATE()

返回UTC(世界标准时间)日期

UTC_TIME()

返回UTC(世界标准时间)时间

日期与时间戳的转换

函数

用法

UNIX_TIMESTAMP()

以UNIX时间戳的形式返回当前时间。SELECT UNIX_TIMESTAMP() ->1634348884

UNIX_TIMESTAMP(date)

将时间date以UNIX时间戳的形式返回。

FROM_UNIXTIME(timestamp)

将UNIX时间戳的时间转换为普通格式的时间

获取月份、星期、星期数、天数等函数

函数

用法

YEAR(date) / MONTH(date) / DAY(date)

返回具体的日期值

HOUR(time) / MINUTE(time) / SECOND(time)

返回具体的时间值

MONTHNAME(date)

返回月份:January,…

DAYNAME(date)

返回星期几:MONDAY,TUESDAY…SUNDAY

WEEKDAY(date)

返回周几,注意,周1是0,周2是1,。。。周日是6

QUARTER(date)

返回日期对应的季度,范围为1~4

WEEK(date) , WEEKOFYEAR(date)

返回一年中的第几周

DAYOFYEAR(date)

返回日期是一年中的第几天

DAYOFMONTH(date)

返回日期位于所在月份的第几天

DAYOFWEEK(date)

返回周几,注意:周日是1,周一是2,。。。周六是7

日期的操作函数

函数

用法

EXTRACT(type FROM date)

返回指定日期中特定的部分,type指定返回的值

EXTRACT(type FROM date)函数中type的取值与含义:

时间和秒钟转换的函数

函数

用法

TIME_TO_SEC(time)

将 time 转化为秒并返回结果值。转化的公式为:小时*3600+分钟*60+秒

SEC_TO_TIME(seconds)

将 seconds 描述转化为包含小时、分钟和秒的时间

计算日期和时间的函数

函数

用法

DATE_ADD(datetime, INTERVAL expr type),ADDDATE(date,INTERVAL expr type)

返回与给定日期时间相差INTERVAL时间段的日期时间

DATE_SUB(date,INTERVAL expr type),SUBDATE(date,INTERVAL expr type)

返回与date相差INTERVAL时间间隔的日期

ADDTIME(time1,time2)

返回time1加上time2的时间。当time2为一个数字时,代表的是秒,可以为负数

SUBTIME(time1,time2)

返回time1减去time2后的时间。当time2为一个数字时,代表的是秒,可以为负数

DATEDIFF(date1,date2)

返回date1 - date2的日期间隔天数

TIMEDIFF(time1, time2)

返回time1 - time2的时间间隔

FROM_DAYS(N)

返回从0000年1月1日起,N天以后的日期

TO_DAYS(date)

返回日期date距离0000年1月1日的天数

LAST_DAY(date)

返回date所在月份的最后一天的日期

MAKEDATE(year,n)

针对给定年份与所在年份中的天数返回一个日期

MAKETIME(hour,minute,second)

将给定的小时、分钟和秒组合成时间并返回

PERIOD_ADD(time,n)

返回time加上n后的时间

上述函数中 type 的取值:

日期的格式化与解析

函数

用法

DATE_FORMAT(date,fmt)

按照字符串fmt格式化日期date值

TIME_FORMAT(time,fmt)

按照字符串fmt格式化时间time值

GET_FORMAT(date_type,format_type)

返回日期字符串的显示格式

STR_TO_DATE(str, fmt)

按照字符串fmt对str进行解析,解析为一个日期

上述非GET_FORMAT函数中fmt参数常用的格式符:

格式符

说明

格式符

说明

%Y

4位数字表示年份

%y

表示两位数字表示年份

%M

月名表示月份(January,…)

%m

两位数字表示月份(01,02,03。。。)

%b

缩写的月名(Jan.,Feb.,…)

%c

数字表示月份(1,2,3,…)

%D

英文后缀表示月中的天数(1st,2nd,3rd,…)

%d

两位数字表示月中的天数(01,02…)

%e

数字形式表示月中的天数(1,2,3,4,5…)

%H

两位数字表示小数,24小时制(01,02…)

%h和%I

两位数字表示小时,12小时制(01,02…)

%k

数字形式的小时,24小时制(1,2,3)

%l

数字形式表示小时,12小时制(1,2,3,4…)

%i

两位数字表示分钟(00,01,02)

%S和%s

两位数字表示秒(00,01,02…)

%W

一周中的星期名称(Sunday…)

%a

一周中的星期缩写(Sun.,Mon.,Tues.,…)

%w

以数字表示周中的天数(0=Sunday,1=Monday…)

%j

以3位数字表示年中的天数(001,002…)

%U

以数字表示年中的第几周,(1,2,3。。)其中Sunday为周中第一天

%u

以数字表示年中的第几周,(1,2,3。。)其中Monday为周中第一天

%T

24小时制

%r

12小时制

%p

AM或PM

%%

表示%

GET_FORMAT函数中date_type和format_type参数取值如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 【重学 MySQL】三十二、日期时间函数
  • 获取日期、时间
  • 日期与时间戳的转换
  • 获取月份、星期、星期数、天数等函数
  • 日期的操作函数
  • 时间和秒钟转换的函数
  • 计算日期和时间的函数
  • 日期的格式化与解析
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档