使用MySQL将Unix时间戳转换为人类可读的date
有没有一个MySQL函数可以用来将Unix时间戳转换为人类可读的date? 我有一个领域,我保存Unix时间,现在我想添加另一个领域的人类可读date。
使用from_unixtime :
SELECT from_unixtime(timestamp) FROM your_table
其他答案中缺less的东西(截至撰写本文时)并不直接显而易见的是, from_unixtime
也可以采用格式参数,例如:
SELECT from_unixtime(timestamp, '%Y %D %M %h:%i:%s') FROM your_table
我想你要找的是FROM_UNIXTIME()
在特定的时区需要一个unix时间戳?
如果你有快速的访问mysql cli的话,这里是一行一行:
mysql> select convert_tz(from_unixtime(1467095851), 'UTC', 'MST') as 'local time'; +---------------------+ | local time | +---------------------+ | 2016-06-27 23:37:31 | +---------------------+
用你想要的时区replace'MST'
。 我住在亚利桑那州,因此从UTC转换到MST。
为什么要把字段保存为可读? 就我们而言
SELECT theTimeStamp, FROM_UNIXTIME(theTimeStamp) AS readableDate FROM theTable WHERE theTable.theField = theValue;
编辑:对不起,我们存储在毫秒中的一切,而不是几秒钟。 修复。
您可以使用DATE_FORMATfunction。 这里是一个包含示例的页面,以及可用于select不同date组件的模式。