使用MySQL将毫秒转换为格式化日期
在MySQL中,日期和时间可以以多种格式呈现。例如,可以将毫秒数(以自1970年1月1日以来的秒数表示的UNIX时间戳)转换为格式化的日期和时间。
阅读更多:MySQL 教程
第一步:创建一个包含时间戳的表格
首先,让我们创建一个包含时间戳的简单表。以下是一个名为my_table的表,其中包含一个名为timestamp的字段,该字段是一个毫秒级UNIX时间戳。
CREATE TABLE my_table (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
timestamp BIGINT(20)
);
第二步:使用UNIX_TIMESTAMP函数将毫秒转换为UNIX时间戳
接下来,我们可以使用MySQL内置的UNIX_TIMESTAMP函数将毫秒转换为UNIX时间戳,例如:
SELECT UNIX_TIMESTAMP(timestamp) AS unix_time FROM my_table;
这将返回一个包含UNIX时间戳的结果集,如下所示:
+--------------+
| unix_time |
+--------------+
| 1554788600000|
| 1554792200000|
+--------------+
第三步:使用FROM_UNIXTIME函数将UNIX时间戳转换为格式化日期
最后,我们可以使用MySQL的FROM_UNIXTIME函数将UNIX时间戳转换为格式化的日期和时间。以下是将UNIX时间戳转换为YYYY-MM-DD格式日期的示例。
SELECT FROM_UNIXTIME(timestamp / 1000, '%Y-%m-%d') AS formatted_date FROM my_table;
这将返回一个包含格式化日期的结果集,如下所示:
+--------------+
| formatted_date |
+--------------+
| 2019-04-09 |
| 2019-04-09 |
+--------------+
总结
在MySQL中,使用UNIX_TIMESTAMP和FROM_UNIXTIME函数可以将毫秒转换为格式化日期。这对于需要将UNIX时间戳转换为具体日期的应用程序非常有用。
极客教程