介绍MySQL FROM_UNIXTIME() 函数
在MySQL中,日期和时间通常是存储为时间戳(Unix时间戳)的数字格式。Unix时间戳是从1970年1月1日00:00:00 UTC到现在的总秒数。MySQL内置函数FROM_UNIXTIME()允许将Unix时间戳转换为可读的日期格式,从而简化了在MySQL中操作日期和时间值的任务。
使用MySQL FROM_UNIXTIME() 函数
1. 将Unix时间戳转换为日期格式
FROM_UNIXTIME()函数的最基本的用法是将Unix时间戳转换为日期格式。以下代码演示了如何使用该函数将时间戳转换为标准日期格式:
SELECT FROM_UNIXTIME(1612360800);
运行后,将返回格式为YYYY-MM-DD HH:MM:SS的日期时间值。以下是输出结果:
2021-02-03 12:40:00
在此查询中,我们将Unix时间戳1612360800作为参数传递给FROM_UNIXTIME()函数,该函数将其转换为可读的日期格式。
2. 将Unix时间戳转换为指定格式的日期
FROM_UNIXTIME()函数还允许将Unix时间戳转换为指定格式的日期。例如,以下代码演示了如何将Unix时间戳转换为“月-日-年”格式的日期:
SELECT FROM_UNIXTIME(1612360800, '%m-%d-%Y');
运行后,将返回格式为MM-DD-YYYY的日期值。以下是输出结果:
02-03-2021
在此查询中,我们传递了两个参数给FROM_UNIXTIME()函数:Unix时间戳和格式代码。在格式代码中,%m代表月份,%d代表日期,%Y代表四位数的年份。您可以通过使用不同的格式代码来指定不同的日期格式。
3. 从日期时间值返回Unix时间戳
除了将Unix时间戳转换为日期格式外,FROM_UNIXTIME()函数还允许从日期时间值返回Unix时间戳。例如,以下代码演示了如何使用该函数将日期时间值“2021-02-03 12:40:00”转换为Unix时间戳:
SELECT UNIX_TIMESTAMP('2021-02-03 12:40:00');
运行后,将返回Unix时间戳作为数字值。以下是输出结果:
1612360800
在此查询中,我们使用UNIX_TIMESTAMP()函数将“2021-02-03 12:40:00”转换为Unix时间戳。请注意,此函数的参数必须是格式为“YYYY-MM-DD HH:MM:SS”的日期时间值。
结论
MySQL FROM_UNIXTIME()函数是一个非常实用的函数,允许在MySQL中轻松地处理日期和时间值。该函数不仅将Unix时间戳转换为可读的日期格式,还允许将日期转换为指定格式的日期,以及从日期时间值返回Unix时间戳。