您的位置:

MySQL格式化日期

一、MySQL格式化日期函数

DATE_FORMAT(date,format)

MySQL提供了DATE_FORMAT(date,format)函数可以将日期格式化为可读性很高的字符串。其中date为日期,format为格式。

例如:

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');

这个例子返回的是当前日期和时间。其中%Y代表4位的年,%m代表2位的月,%d代表2位的日,%H代表2位的小时,%i代表2位的分钟,%s代表2位的秒。对于常用的日期格式,MySQL提供了很多简写形式,如下:

  • %Y 4位年份
  • %y 2位年份
  • %m 月份(01-12)
  • %c 月份(1-12)
  • %b 月份缩写
  • %M 月份全称
  • %d 日(01-31)
  • %D 日英文缩写
  • %j 一年中的第几天
  • %H 小时(00-23)
  • %h 小时(01-12)
  • %p AM或PM
  • %i 分钟(00-59)
  • %s 秒(00-59)

二、MySQL格式化日期函数年月日时分秒

MySQL中获取当前日期和时间的函数是NOW(),返回的格式为'YYYY-MM-DD HH:MM:SS'。如果需要将其转换为其他格式,需要使用DATE_FORMAT()函数。

例如:

SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H时%i分%s秒');

这个例子返回的是当前日期和时间。其中%Y代表4位的年,%m代表2位的月,%d代表2位的日,%H代表2位的小时,%i代表2位的分钟,%s代表2位的秒。

三、MySQL格式化日期字符串

在MySQL中,日期可以使用以下三种格式表示:

  1. 字符串格式
  2. 数字格式
  3. 日期格式

字符串格式有以下两种:

'YYYY-MM-DD'
'YY-MM-DD'

数字格式有以下两种:

YYYYMMDD
YYMMDD

日期格式有以下两种:

'YYYY-MM-DD HH:MM:SS'
'YY-MM-DD HH:MM:SS'

四、MySQL格式化日期格式

MySQL日期格式化及其格式化字符串如下:

日期 格式化字符串 输出
2021-12-31 %Y-%m-%d 2021-12-31
2021-12-31 %Y/%m/%d 2021/12/31
2021-12-31 %M %d %Y December 31 2021

五、MySQL格式化日期

在MySQL中,有两个函数可以得到当前日期。这两个函数是:NOW()和CURRENT_DATE()。NOW()输出的是当前日期和时间,而CURRENT_DATE()只输出了当前日期。

下面的例子使用NOW():

SELECT NOW();

这个例子返回的是当前日期和时间。

六、MySQL格式化日期时间函数

MySQL提供的日期时间函数有以下内容:

  • NOW()
  • CURRENT_TIMESTAMP()
  • CURRENT_TIME()
  • CURRENT_DATE()
  • DATE()
  • EXTRACT()

七、MySQL日期格式转换

我们可以使用STR_TO_DATE()函数将字符串转换成MySQL的日期格式。STR_TO_DATE()函数的语法如下:

STR_TO_DATE(str,format)

其中,str表示要进行转换的字符串,format表示str的格式。下面是一个例子:

SELECT STR_TO_DATE('2021-12-31', '%Y-%m-%d');

这会将字符串'2021-12-31'转换为MySQL的日期格式,并输出结果。

八、MySQL时间格式

MySQL时间格式化及其格式化字符串如下:

时间 格式化字符串 输出
'23:59:59' %T 23:59:59
'23:59:59' %h:%i %p 11:59 PM

九、MySQL转日期格式函数

MySQL提供了FROM_UNIXTIME()函数,可以将Unix时间戳转换为日期格式。

FROM_UNIXTIME(unix_timestamp,format)

其中,unix_timestamp为Unix时间戳,format为日期的格式。下面是一个例子:

SELECT FROM_UNIXTIME(946656000, '%Y-%m-%d %H:%i:%s');

这个例子返回的是Unix时间戳946656000对应的日期和时间。