如何在sqlite中转换Unix纪元时间

时间:2013-01-31 15:33:04

标签: sql sqlite unix epoch

你能帮我把Unix纪元时间转换成格式yyyy-mm-dd hh:mm:ss(24h) sqlite 吗?(GMT + 7非常感谢)。

Ex:从1319017136629到2011年10月19日星期三下午4:38:56 GMT + 7

非常感谢提前。

p / s:环顾四周找到解决方案:

SELECT datetime(1319017136629, 'unixepoch', 'localtime');

但我仍在寻找一种在SQLite中批量转换Unixepoch时间的方法。

3 个答案:

答案 0 :(得分:18)

要更改数据库中的值,请使用UPDATE命令:

UPDATE MyTable SET MyColumn = datetime(MyColumn, 'unixepoch', 'localtime')

答案 1 :(得分:5)

1319017136629milliseconds中的值,不是UNIX纪元时间; 因此必须将其除以1000并四舍五入为整数seconds只有这样 DATE()DATETIME()才会转换。

SELECT DATETIME(ROUND(dateColumn / 1000), 'unixepoch') AS isodate
FROM tableName

不幸的是将数据库值转换为localtime;输出转换没有问题。

答案 2 :(得分:1)

SELECT DATE(ROUND(1601272453000/1000),'unixepoch')