【发布时间】:2014-06-10 22:30:20
【问题描述】:
您好,我有一个数字数据类型的列 1310112000 之类的数据是一个日期,但我不知道如何以易于理解的格式制作它: 例如:2013 年 3 月 10 日下午 12:00:00
谁能帮帮我。
【问题讨论】:
-
你能接受答案吗?它可以帮助其他人解决同样的问题。
-
是的,它工作正常。
标签: sql oracle11g unix-timestamp
您好,我有一个数字数据类型的列 1310112000 之类的数据是一个日期,但我不知道如何以易于理解的格式制作它: 例如:2013 年 3 月 10 日下午 12:00:00
谁能帮帮我。
【问题讨论】:
标签: sql oracle11g unix-timestamp
请尝试
select from_unixtime(floor(EPOCH_TIMESTAMP/1000)) from table;
这将给出像 E.g: 2018-03-22 07:10:45 这样的结果 来自MYSQL的PFB引用
【讨论】:
即 EPOCH 时间:自 Epoch(1970-01-01) 以来的秒数。使用这个:
SELECT CAST(DATE '1970-01-01' + ( 1 / 24 / 60 / 60 ) * '1310112003' AS TIMESTAMP) FROM DUAL;
结果:
08-JUL-11 08.00.03.000000000 AM
【讨论】:
在 Microsoft SQL Server 中,以前的答案对我不起作用。但以下确实有效。
SELECT created_time AS created_time_raw,
dateadd( second, created_time, CAST( '1970-01-01' as datetime ) ) AS created_time_dt
FROM person
person 是一个数据库表,created_time 是一个整数字段,其值为自纪元以来的秒数。
可能还有其他方法可以执行datetime 算术。但这是第一个起作用的。我不知道它是否是特定于 MSSQL 的。
【讨论】: