MySQL 使用FROM_UNIXTIME()
函数将Unix时间戳(Epoch时间)转换为人类可读形式的日期和时间
在MySQL中,我们可以使用FROM_UNIXTIME()
函数将Unix时间戳(Epoch时间)转换为人类可读形式的日期和时间。
阅读更多:MySQL 教程
准备工作
首先,假设我们有一个列名为“epoch_time”的表,列中存储的是以秒为单位的Unix时间戳。
CREATE TABLE example_table (
id INT(11) NOT NULL AUTO_INCREMENT,
epoch_time INT(11) NOT NULL,
PRIMARY KEY (id)
);
接下来,我们向表中插入一些数据,其中包括一些Unix时间戳:
INSERT INTO example_table (epoch_time) VALUES (1628378800), (1628457000), (1628533200);
转换为人类可读的日期和时间
现在我们可以使用FROM_UNIXTIME()
函数将Unix时间戳转换为人可读形式的日期和时间。该函数采用Unix时间戳作为输入,并返回具有可读日期和时间的字符串。
以下是使用FROM_UNIXTIME()
函数将时间戳转换为格式化日期的示例:
SELECT id, FROM_UNIXTIME(epoch_time, '%Y-%m-%d') AS date FROM example_table;
运行以上查询语句后,将返回以下结果:
+----+------------+
| id | date |
+----+------------+
| 1 | 2021-08-08 |
| 2 | 2021-08-09 |
| 3 | 2021-08-10 |
+----+------------+
可以看到,由于我们在查询中指定了具有格式'%Y-%m-%d'
的日期格式字符串,因此现在我们的时间戳已成功转换为可读的日期。
继续转换为日期和时间
类似地,如果我们想将时间戳转换为可读的日期和时间,则使用以下查询语句:
SELECT id, FROM_UNIXTIME(epoch_time, '%Y-%m-%d %H:%i:%s') AS datetime FROM example_table;
运行以上查询语句后,将返回以下结果:
+----+---------------------+
| id | datetime |
+----+---------------------+
| 1 | 2021-08-08 00:00:00 |
| 2 | 2021-08-09 00:00:00 |
| 3 | 2021-08-10 00:00:00 |
+----+---------------------+
现在我们的时间戳已成功转换为可读的日期和时间。
总结
在MySQL中,通过使用FROM_UNIXTIME()
函数,可以将Unix时间戳转换为人类可读形式的日期和时间。我们可以选择不同的日期和时间格式字符串来控制日期和时间的呈现方式。这使得处理Unix时间戳时,可以更加方便和直观。