了解时间戳 - 1505143211567 (Oracle DB)
Posted
技术标签:
【中文标题】了解时间戳 - 1505143211567 (Oracle DB)【英文标题】:Understanding timestamp- 1505143211567 (Oracle DB) 【发布时间】:2017-10-12 10:24:05 【问题描述】:我有以下时间戳“1505143211567”。通过删除最后 3 个数字,我可以转换为正常的人类可读格式。数据库从 Oracle 运行。我想将此时间戳转换为人类可读的。我尝试了类似下面的东西。
我可以从 sql 中删除最后 3 个和
select from_unixtime(1505143211)
但在 oracle 中它的种类不同。每次我不想删除号码并手动检查。
需要的是:数据库查询。
【问题讨论】:
【参考方案1】:您得到的时间戳似乎是一个 EPOC 值,当使用在线转换器时,我得到以下信息:
1505143211567 -> 2017-09-11 15:20:12
我不是 Oracle 方面的专家,但是有很多资源可以将其转换为人类可读的格式,以下有帮助吗?
select TO_CHAR( FROM_TZ( CAST(DATE '1970-01-01' + (1/24/60/60/1000) * <column name> AS TIMESTAMP), 'Europe/London'), 'MM/DD/YYYY HH24:MI:SS') from <tablename>;
column name
是您的时间戳列,tablename
显然是您从中获取该列的表。 来源可以在here找到。
你也有一些关于这个问题的 *** 帖子。 Here 可能是个不错的选择。
【讨论】:
我更喜欢1 / (24 * 60 * 60 * 1000)
,所以我不必弄清楚/
运算符的优先级。以上是关于了解时间戳 - 1505143211567 (Oracle DB)的主要内容,如果未能解决你的问题,请参考以下文章