mysql字符串转时间yymmdd_MySQL⽇期和字符串相互转化⽇期转字符串
date_format(date, format) 函数⽤于以不同的格式显⽰⽇期/时间数据。
其中:date 参数是合法的⽇期
format 规定⽇期/时间的输出格式
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 位
实例1:将当前⽇期格式化为“****-**-** **:**:**”字符串mysql> select date_format(now(), '%Y-%m-%d %H:%I:%S');
+----------------------------------------+
| date_format(now(),'%Y-%m-%d %H:%I:%S') |
+----------------------------------------+
| 2019-11-08 22:10:02 |
+----------------------------------------+
1 row in set
unix时间戳转换日期格式实例2:将当前⽇期格式化为“****年**⽉**⽇ **时**分**秒”mysql> select date_format(now(), '%Y年%m⽉%d⽇ %H时%I分%S秒'); +-------------------------------------------------+
| date_format(now(), '%Y年%m⽉%d⽇ %H时%I分%S秒') |
+-------------------------------------------------+
| 2019年11⽉09⽇ 11时11分02秒 |
+-------------------------------------------------+
1 row in set
⽇期转时间戳
unix_timestamp(date) 若⽆参数调⽤,则返回⼀个Unix timestamp ('1970-01-01 00:00:00' GMT
之后的秒数) 作为⽆符号整数。若⽤date 来调⽤UNIX_TIMESTAMP(),它会将参数值以'1970-01-01 00:00:00'
GMT后的秒数的形式返回。date 可以是⼀个DATE
字符串、⼀个 DATETIME字符串、⼀个
TIMESTAMP或⼀个当地时间的YYMMDD 或YYYMMDD格式的数字。
实例1:使⽤ UNIX_TIMESTAMP() 函数返回 UNIX 格式的时间戳,输⼊ SQL 语句和执⾏结果如下。
mysql> select UNIX_TIMESTAMP();
+------------------+
| UNIX_TIMESTAMP() |
+------------------+
| 1573271228 |
+------------------+
1 row in set
实例2:使⽤ UNIX_TIMESTAMP 获取指定⽇期的时间戳。mysql> select UNIX_TIMESTAMP('2019-11-01');
+------------------------------+
| UNIX_TIMESTAMP('2019-11-01') |
| 1572537600 |
+------------------------------+
1 row in set
mysql> select UNIX_TIMESTAMP('20191101');
+----------------------------+
| UNIX_TIMESTAMP('20191101') |
+----------------------------+
| 1572537600 |
+----------------------------+
字符串转⽇期
str_to_date(str,format) 函数是将时间格式的字符串(str),按照所提供的显⽰格式(format)转换为DATETIME类型的值。
实例:将给定的⽇期字符串转换成⽇期对象mysql> select str_to_date('2019-11-09', '%Y-%m-%d %H:%I:%S');
+------------------------------------------------+
| str_to_date('2019-11-09', '%Y-%m-%d %H:%I:%S') |
+------------------------------------------------+
| 2019-11-09 00:00:00 |
+------------------------------------------------+
1 row in set
mysql> select str_to_date('2019-11-09', '%Y-%m-%d');
+---------------------------------------+
| str_to_date('2019-11-09', '%Y-%m-%d') |
+---------------------------------------+
| 2019-11-09 |
+---------------------------------------+
1 row in set
时间戳转⽇期/字符串
FROM_UNIXTIME(unix_timestamp) ,
FROM_UNIXTIME(unix_timestamp,format) 返回 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS
格式值的 unix_timestamp 参数表⽰,具体格式取决于该函数是否⽤在字符串中或是数字语境中。若 format 已经给出,则结果的格式是根据 format 字符串⽽定。
format 可以包含同 DATE_FORMAT()
函数输⼊项列表中相同的说明符。
实例:mysql> select from_unixtime(1509257408);
| from_unixtime(1509257408) |
+---------------------------+
| 2017-10-29 14:10:08 |
+---------------------------+
1 row in set
mysql> select from_unixtime(1509257408,'%Y~%m~%d %H:%I:%S'); +-----------------------------------------------+
| from_unixtime(1509257408,'%Y~%m~%d %H:%I:%S') |
+-----------------------------------------------+
| 2017~10~29 14:02:08 |
+-----------------------------------------------+
1 row in set
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论