MySQL 的日期和时间函数



官网:https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_str-to-date



MySQL的日期函数较多,只需要掌握常用的即可,常用的日期或时间函数参考如下的表格:

表  STYLEREF 1 \s 4- SEQ 表 \* ARABIC \s 1 1 MySQL的日期函数

函数

函数功能描述

函数举例

DAYOFWEEK(DATE)

返回DATE的星期索引(1= Sunday,2= Monday,... 7=Saturday)

mysql> SELECT DAYOFWEEK('2016-05-24');

+-------------------------+

| DAYOFWEEK('2016-05-24') |

+-------------------------+

|                       3 |

+-------------------------+

DAYOFYEAR(DATE)

返回DATE是一年中的第几天,范围为1到366

mysql>  SELECT DAYOFYEAR('2016-05-24');

+-------------------------+

| DAYOFYEAR('2016-05-24') |

+-------------------------+

|                     145 |

+-------------------------+

HOUR(TIME)/MINUTE(TIME)/SECOND(TIME)

返回TIME的小时值/分钟值/秒值,范围为0到23

mysql> SELECT HOUR('10:05:03'),MINUTE('10:05:03'),SECOND('10:05:03');

+------------------+--------------------+--------------------+

| HOUR('10:05:03') | MINUTE('10:05:03') | SECOND('10:05:03') |

+------------------+--------------------+--------------------+

|               10 |                  5 |                  3 |

+------------------+--------------------+--------------------+

DATE_FORMAT(DATE,FORMAT)

依照FORMAT字符串格式化DATE值,修饰符的含义:

%M:月的名字(January..December)

%W:星期的名字(Sunday..Saturday)

%D:有英文后缀的某月的第几天(0th,1st,2nd,3rd等)

%Y:4位数字年份

%y:2位数字年份

%m:月,数字(00..12)

%c:月,数字(0..12)

%d:代表月份中的天数,格式为(00……31)

%e:代表月份中的天数,格式为(0……31)

%x:周值的年份,星期一是一个星期的第一天,数字的,4位,与“%v”一同使用

%a:缩写的星期名(Sun..Sat)

%H:小时(00..23)

%k:小时(0..23)

%h:小时(01..12)

%I:小时(01..12)

%l:小时(1..12)

%i:代表分钟, 格式为(00……59) 。只有这一个代表分钟,大写的I不代表分钟代表小时

%r:代表 时间,格式为12 小时(hh:mm:ss [AP]M))

%T:代表 时间,格式为24 小时(hh:mm:ss)

%S:秒(00..59)

%s:秒(00..59)

%p:AM或PM

%w:一周中的天数(0=Sunday..6=Saturday)

mysql> SELECT DATE_FORMAT('2016-05-24', '%W %M %Y');

+---------------------------------------+

| DATE_FORMAT('2016-05-24', '%W %M %Y') |

+---------------------------------------+

| Tuesday May 2016                      |

+---------------------------------------+

STR_TO_DATE()

将字符串转换为日期类型

mysql> SELECT STR_TO_DATE('04/31/2004', '%m/%d/%Y');

+---------------------------------------+

| STR_TO_DATE('04/31/2004', '%m/%d/%Y') |

+---------------------------------------+

| 2004-04-31                            |

+---------------------------------------+

1 row in set (0.00 sec)

CURDATE()/CURRENT_DATE

以“YYYY-MM-DD”或“YYYYMMDD”格式返回当前的日期值

mysql> SELECT CURDATE(),CURRENT_DATE;

+------------+--------------+

| CURDATE()  | CURRENT_DATE |

+------------+--------------+

| 2017-07-28 | 2017-07-28   |

+------------+--------------+

CURTIME()

/CURRENT_TIME

以“HH:MM:SS”或“HHMMSS”格式返回当前的时间值

mysql> SELECT CURTIME(),CURRENT_TIME();

+-----------+----------------+

| CURTIME() | CURRENT_TIME() |

+-----------+----------------+

| 16:05:37  | 16:05:37       |

+-----------+----------------+

NOW()/SYSDATE()

/CURRENT_TIMESTAMP

以“YYYY-MM-DD HH:MM:SS”或“YYYYMMDDHHMMSS”格式返回当前的日期时间值

mysql> SELECT NOW(),SYSDATE(),CURRENT_TIMESTAMP;

+---------------------+---------------------+---------------------+

| NOW()               | SYSDATE()           | CURRENT_TIMESTAMP   |

+---------------------+---------------------+---------------------+

| 2017-07-28 16:04:31 | 2017-07-28 16:04:31 | 2017-07-28 16:04:31 |

+---------------------+---------------------+---------------------+

SEC_TO_TIME(NUMBER)

以“HH:MM:SS”或“HHMMSS”格式返回入参值被转换到时分秒后的值

mysql> SELECT SEC_TO_TIME(2378);

+-------------------+

| SEC_TO_TIME(2378) |

+-------------------+

| 00:39:38          |

+-------------------+

TIME_TO_SEC(TIME)

将参数TIME转换为秒数后返回

mysql> SELECT TIME_TO_SEC('22:23:00');

+-------------------------+

| TIME_TO_SEC('22:23:00') |

+-------------------------+

|                   80580 |

+-------------------------+

其它的函数请查阅官方文档。

真题1、MySQL中的字符串和日期相互转化的函数是什么?

答案:MySQL中日期转换为字符串使用DATE_FORMAT函数,相当于Oracle中的TO_CHAR函数,而将字符串转换为日期格式,使用的函数为STR_TO_DATE,相当于Oracle中的TO_DATE函数。

STR_TO_DATE函数的使用示例如下所示:

select str_to_date('09/01/2009','%m/%d/%Y');

select str_to_date('20140422154706','%Y%m%d%H%i%s');

select str_to_date('2014-04-22 15:47:06','%Y-%m-%d %H:%i:%s');



12.7 Date and Time Functions

This section describes the functions that can be used to manipulate temporal values. See Section 11.3, “Date and Time Types”, for a description of the range of values each date and time type has and the valid formats in which values may be specified.

Table 12.13 Date and Time Functions

Name Description
ADDDATE() Add time values (intervals) to a date value
ADDTIME() Add time
CONVERT_TZ() Convert from one time zone to another
CURDATE() Return the current date
CURRENT_DATE(), CURRENT_DATE Synonyms for CURDATE()
CURRENT_TIME(), CURRENT_TIME Synonyms for CURTIME()
CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP Synonyms for NOW()
CURTIME() Return the current time
DATE() Extract the date part of a date or datetime expression
DATE_ADD() Add time values (intervals) to a date value
DATE_FORMAT() Format date as specified
DATE_SUB() Subtract a time value (interval) from a date
DATEDIFF() Subtract two dates
DAY() Synonym for DAYOFMONTH()
DAYNAME() Return the name of the weekday
DAYOFMONTH() Return the day of the month (0-31)
DAYOFWEEK() Return the weekday index of the argument
DAYOFYEAR() Return the day of the year (1-366)
EXTRACT() Extract part of a date
FROM_DAYS() Convert a day number to a date
FROM_UNIXTIME() Format Unix timestamp as a date
GET_FORMAT() Return a date format string
HOUR() Extract the hour
LAST_DAY Return the last day of the month for the argument
LOCALTIME(), LOCALTIME Synonym for NOW()
LOCALTIMESTAMP, LOCALTIMESTAMP() Synonym for NOW()
MAKEDATE() Create a date from the year and day of year
MAKETIME() Create time from hour, minute, second
MICROSECOND() Return the microseconds from argument
MINUTE() Return the minute from the argument
MONTH() Return the month from the date passed
MONTHNAME() Return the name of the month
NOW() Return the current date and time
PERIOD_ADD() Add a period to a year-month
PERIOD_DIFF() Return the number of months between periods
QUARTER() Return the quarter from a date argument
SEC_TO_TIME() Converts seconds to 'HH:MM:SS' format
SECOND() Return the second (0-59)
STR_TO_DATE() Convert a string to a date
SUBDATE() Synonym for DATE_SUB() when invoked with three arguments
SUBTIME() Subtract times
SYSDATE() Return the time at which the function executes
TIME() Extract the time portion of the expression passed
TIME_FORMAT() Format as time
TIME_TO_SEC() Return the argument converted to seconds
TIMEDIFF() Subtract time
TIMESTAMP() With a single argument, this function returns the date or datetime expression; with two arguments, the sum of the arguments
TIMESTAMPADD() Add an interval to a datetime expression
TIMESTAMPDIFF() Subtract an interval from a datetime expression
TO_DAYS() Return the date argument converted to days
TO_SECONDS() Return the date or datetime argument converted to seconds since Year 0
UNIX_TIMESTAMP() Return a Unix timestamp
UTC_DATE() Return the current UTC date
UTC_TIME() Return the current UTC time
UTC_TIMESTAMP() Return the current UTC date and time
WEEK() Return the week number
WEEKDAY() Return the weekday index
WEEKOFYEAR() Return the calendar week of the date (1-53)
YEAR() Return the year
YEARWEEK() Return the year and week
Name Description



About Me

.............................................................................................................................................

● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除

● 本文在itpub(http://blog.itpub.net/26736162/abstract/1/)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新

● 本文itpub地址:http://blog.itpub.net/26736162/abstract/1/

● 本文博客园地址:http://www.cnblogs.com/lhrbest

● 本文pdf版、个人简介及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/

● 数据库笔试面试题库及解答:http://blog.itpub.net/26736162/viewspace-2134706/

● DBA宝典今日头条号地址:http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

.............................................................................................................................................

● QQ群号:230161599(满)、618766405

● 微信群:可加我微信,我拉大家进群,非诚勿扰

● 联系我请加QQ好友(646634621),注明添加缘由

● 于 2018-04-01 06:00 ~ 2018-04-31 24:00 在魔都完成

● 最新修改时间:2018-04-01 06:00 ~ 2018-04-31 24:00

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

.............................................................................................................................................

● 小麦苗的微店:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

● 小麦苗出版的数据库类丛书:http://blog.itpub.net/26736162/viewspace-2142121/

● 小麦苗OCP、OCM、高可用网络班:http://blog.itpub.net/26736162/viewspace-2148098/

.............................................................................................................................................

使用微信客户端扫描下面的二维码来关注小麦苗的微信公众号(xiaomaimiaolhr)及QQ群(DBA宝典),学习最实用的数据库技术。

小麦苗的微信公众号      小麦苗的DBA宝典QQ群2     《DBA笔试面试宝典》读者群       小麦苗的微店

.............................................................................................................................................

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2152970/,如需转载,请注明出处,否则将追究法律责任。

MySQL 的日期和时间函数相关推荐

  1. mysql 日期和时间函数_介绍一下mysql的日期和时间函数

    介绍一下mysql的日期和时间函数 mysql> SELECT PERIOD_DIFF(9802,199703); -> 11 DATE_ADD(date,INTERVAL expr ty ...

  2. 【mysql】日期和时间函数

    文章目录 日期和时间函数 1. 获取日期.时间 2. 日期与时间戳的转换 3. 获取月份.星期.星期数.天数等函数 4. 日期的操作函数 5. 时间和秒钟转换的函数 6. 计算日期和时间的函数 7. ...

  3. mysql的日期和时间函数

    2019独角兽企业重金招聘Python工程师标准>>> 查询一天: select * from table where to_days(column_time) = to_days( ...

  4. mysql 函数用还是不用_Mysql中日期和时间函数应用不用求人

    Mysql中日期和时间函数应用不用求人 2008-05-23 17:41· 稿源:互联网 TIME_FORMAT(time,format) 这象上面的DATE_FORMAT()函数一样使用,但是for ...

  5. mysql now str,数据库学习之MySQL (十)—— 日期和时间函数 NOW STR_TO_DATE DATE_FORMAT 流程控制函数 IF IFNULL CASE...

    MySQL学习专栏 正在持续更新中:) 文章目录 日期和时间函数 NOW STR_TO_DATE DATE_FORMAT 流程控制函数 IF IFNULL CASE 下章预告 日期和时间函数 NOW ...

  6. MySQL日期与时间函数

    MySQL日期与时间函数 MySQL服务器中的三种时区设置: ①系统时区-保存在系统变量system_time_zone ②服务器时区-保存在全局系统变量global.time_zone ③每个客户端 ...

  7. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  8. mysql取数据库时间函数_MySQL数据库—日期与时间函数

    一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...

  9. MySQL日期和时间函数的用法及使用举例

    MySQL日期和时间函数的用法及使用举例 MySQL提供了用于处理日期和时间的相关函数.现对这些函数的功能及用法进行介绍并举例. 创建数据表emp并输入数据: create table emp(emp ...

最新文章

  1. oracle 10g 用户管理笔记
  2. C语言strstr()函数(在主字符串里查找子字符串,返回第一次找到的子字符串以及后面的字符串)
  3. ElementUI中对el-table的某一列的时间进行格式化
  4. 喜报!神策数据荣获“2019 银行业数字营销大赛”智能营销类金奖
  5. Asp.Net Core实战
  6. 统计学习方法-李航(5)
  7. 元宇宙会是一场噩梦吗?
  8. Memory Networks论文串烧
  9. python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...
  10. 深度学习基础(七)—— Gibbs 采样
  11. 实例分割小工具labelme转coco
  12. 关于动网论坛、动力起航、自由动力、动易、动感购物、乔客、织梦CMS.
  13. android 字符串 声波,识别成功率100%的声波配网,看完你也可以实现一个
  14. 字字珠玑,证监会84问小米如何反击?
  15. REST API 是什么?
  16. 中国医科大学计算机应用本科作业答案,17秋中国医科大学《计算机应用基础(本科)》在线作业100分标准答案...
  17. MySQL数据库存储的字符显示是问号??
  18. Golang 依赖包下载时候代理设置
  19. 2021-12-17 每日一练 100元怎么买100个蛋,鸡蛋1毛一个,鸭蛋3元一个,鹅蛋6元一个
  20. win10新建虚拟机网络配置未连接服务器,win10虚拟主机怎么联网(win10虚拟机连不上网)...

热门文章

  1. w 命令的解释与示例
  2. 新用户创作打卡挑战赛正在进行中
  3. 新思路计算机二级试题,全国计算机等级考试-新思路官网-等考吧-计算机二级
  4. yum下载下来的文件保存在哪个路径?
  5. 【李宏毅机器学习】adversarial attack 对抗攻击
  6. 社工考试用计算机干什么,考社工证到底有什么用?为什么人人都在报考?
  7. (最新版)微信现在怎样用QQ注册~
  8. 王者转号仅显示可转移的服务器,王者可以跨系统转移账号了,需要花99,大家怎么看?...
  9. 【HDFS】Hadoop RPC中的Responder、Listener、Reader、Handler
  10. 网游同步技术:实时动作游戏同步方式和传输协议选择