MySQL中的FROM_UNIXTIME()函数可以将一个UNIX时间戳转换为指定格式的日期时间字符串。UNIX时间戳是指自1970年1月1日00:00:00至某个时间点所经过的秒数。FROM_UNIXTIME()函数可以将这些秒数转换为人类可读的日期时间格式。
使用方法:
函数原型:FROM_UNIXTIME(unix_timestamp[,format])
其中,“unix_timestamp”是UNIX时间戳,单位为秒。如果要将MySQL中的日期时间转换为UNIX时间戳,可以使用UNIX_TIMESTAMP()函数。另外,UNIX时间戳通常是整数类型。如果是小数类型,FROM_UNIXTIME()函数会将其转换为整数类型。
“format”是一个可选的参数,用于指定输出的日期时间格式。如果不指定,则默认输出为“%Y-%m-%d %H:%i:%s”格式的字符串。format参数有以下常用的格式化选项:
- %Y:4位数年份
- %m:月份(01-12)
- %d:日期(01-31)
- %H:小时(00-23)
- %i:分钟数(00-59)
- %s:秒(00-59)
实例1:将UNIX时间戳转换为指定格式的日期时间字符串
假设现在要将UNIX时间戳“1620904412”转换为“2021-05-13 15:40:12”格式的日期时间字符串,可以使用以下代码:
SELECT FROM_UNIXTIME(1620904412,'%Y-%m-%d %H:%i:%s');
执行以上代码,结果如下:
+-------------------------+
| FROM_UNIXTIME(1620904412,'%Y-%m-%d %H:%i:%s') |
+-------------------------+
| 2021-05-13 15:40:12 |
+-------------------------+
实例2:使用UNIX_TIMESTAMP()函数将MySQL中的日期时间转换为UNIX时间戳
假设现在要将MySQL中的日期时间“2021-05-13 15:40:12”转换为UNIX时间戳,可以使用以下代码:
SELECT UNIX_TIMESTAMP('2021-05-13 15:40:12');
执行以上代码,结果如下:
+-------------------------------------+
| UNIX_TIMESTAMP('2021-05-13 15:40:12') |
+-------------------------------------+
| 1620904412 |
+-------------------------------------+
从以上结果可以看出,MySQL会将输入的日期时间转换为UNIX时间戳格式。
总结:
FROM_UNIXTIME()函数是MySQL中一个十分实用的函数,可以将UNIX时间戳转换为指定格式的日期时间字符串。在实际应用中,可以根据自己的需求指定输出格式,以便更好的进行数据处理和分析。