在mysql中将纪元编号转换为人类可读日期

时间:2014-06-02 12:45:54

标签: mysql epoch

我有一个纪元号码1389422614485。 存储此值的值的数据类型是varchar。 我想将其值转换为人类可读时间。 我们怎么做? 此转换的任何示例?

4 个答案:

答案 0 :(得分:49)

您的纪元值1389422614485似乎具有毫秒精度。所以你需要使用一些mysql数学函数和from_unixtime()来生成人类可读的格式。

mysql> select from_unixtime(floor(1389422614485/1000));
+------------------------------------------+
| from_unixtime(floor(1389422614485/1000)) |
+------------------------------------------+
| 2014-01-11 12:13:34                      |
+------------------------------------------+

答案 1 :(得分:9)

查看from-unixtime

mysql> SELECT FROM_UNIXTIME(1196440219);
       -> '2007-11-30 10:30:19'

答案 2 :(得分:8)

您可以使用from_unixtime(),如下所示:

SELECT from_unixtime(1388618430);

返回2014-01-02 00:20:30

答案 3 :(得分:1)

这将适用于+positive-negative时期,以防万一,例如生日较早的日期以及要指定日期格式的情况

select
date_format(DATE_ADD(from_unixtime(0), interval '1389422614485'/1000 second), '%Y-%m-%d %H:%i:%s') as my_new_date;