Could you help me convert UNIX epoch time into format yyyy-mm-dd hh:mm:ss
(24h) in SQLite? (GMT+7 would be appreciated).
Example: from 13190171366
1319017136629
is a value in milliseconds
, which is not UNIX
epoch time;
therefore it has to be divided by 1000
and rounded to integer seconds
; only then DATE()
and DATETIME()
will convert.
SELECT DATETIME(ROUND(dateColumn / 1000), 'unixepoch') AS isodate FROM tableName
Converting database values to localtime
is unfortunate; conversion on output is less problematic.
The Y2038 problem might already be worth a consideration.
SELECT DATE(ROUND(1601272453000 / 1000), 'unixepoch')
To change the values in the database, use the UPDATE
command:
UPDATE MyTable SET MyColumn = datetime(MyColumn, 'unixepoch', 'localtime')