MySQL STR_TO_DATE函数
时间:2019-02-04 12:52:45 来源:igfitidea点击:
本MySQL教程通过语法和示例说明了如何使用MySQL STR_TO_DATE函数。
描述
MySQL STR_TO_DATE函数用于将字符串格式日期根据指定格式重新转换为日期。
语法
MySQL中STR_TO_DATE函数的语法为:
STR_TO_DATE( string, format_mask )
string要格式化为日期的字符串。
format_mask转换后的日期的格式。
format_mask可以是下面值的组合:
值 | 说明 |
---|---|
%a | 星期英文名称缩写(Sun 到 Sat) |
%b | 月份英文名称缩写(Jan至Dec) |
%C | 月份(数值0到12) |
%D | 月份数值,后面跟着后缀(1st,2nd,3rd,...) |
%d | 月份中的第几天(01到31) |
%e | 月份中的第几天(1到31) |
%f | 微秒(000000到999999) |
%H | 小时(24小时制00到23) |
%h | 小时(12小时制00到12) |
%I | 小时(12小时制00到12) |
%i | 分钟(00至59) |
%j | 一年中的第几天(001至366) |
%k | 小时(00到23) |
%l | 小时(1到12) |
%M | 月份的英文全称(January 至 December) |
%m | 月份数值(00到12) |
%p | AM(上午) 或者 PM(下午) |
%r | 12小时AM或PM格式的时间(hh:mm:ss AM/PM) |
%S | 秒(00至59) |
%s | 秒(00至59) |
%T | 24小时制时间(hh:mm:ss) |
%U | 周数。 按照星期天是星期的第一天算(00到53)请查阅ISO周数和标准周的区别 |
%u | 周数。 按照星期一是星期的第一天算(00到53)请查阅ISO周数和标准周的区别 |
%V | 周数。 按照星期天是星期的第一天算(00到53),与%X一起使用 |
%v | 周数。 按照星期一是星期的第一天算(00到53),与%X一起使用 |
%W | 星期的完整英文名(Sunday 至Saturday) |
%w | 星期的第几天 ,其中星期天= 0,星期六= 6 |
%X | 按照星期天是星期的第一天算时,对应的年份,与%V一起使用 |
%x | 按照星期天是星期的第一天算时,对应的年份,与%v一起使用 |
%Y | 4位数字年份 |
%y | 2位数字年份 |
注意
- 如果字符串包含有效的日期和时间部分,则STR_TO_DATE函数将返回日期时间值。
- 如果字符串仅包含有效的日期部分,则STR_TO_DATE函数将返回日期值。
- 如果字符串仅包含有效的时间部分,则STR_TO_DATE函数将返回时间值。
- 如果无法使用format_mask提取有效的日期和时间部分,则STR_TO_DATE函数将返回NULL。
示例
MySQL STR_TO_DATE函数示例
mysql> SELECT STR_TO_DATE('February 01 2012', '%M %d %Y'); Result: '2012-02-01' mysql> SELECT STR_TO_DATE('March,8,2012', '%M,%e,%Y'); Result: '2012-03-08' mysql> SELECT STR_TO_DATE('Friday, February 28, 2012', '%W, %M %e, %Y'); Result: '2012-02-28' mysql> SELECT STR_TO_DATE('2012,2,28 09', '%Y,%m,%d %h'); Result: '2012-02-28 09:00:00' mysql> SELECT STR_TO_DATE('2012,2,28 09,30,05', '%Y,%m,%d %h,%i,%s'); Result: '2012-02-28 09:30:05' mysql> SELECT STR_TO_DATE('10,15,30', '%h,%i,%s'); Result: '10:15:30'