【问题标题】:Time in UTC HEX format. How to convert to normal time?UTC HEX 格式的时间。如何转换为正常时间?
【发布时间】:2012-01-18 09:55:12
【问题描述】:

我有一些来自第 3 方开发公司的数据采集申请。时间戳由应用程序保存为未知格式。 MSSQL 2008 数据库中的列名为“UTC”,数据类型为 varchar(32)。

Timestamp sample:

2455832.07550638:000000A9
2455832.07552953:00000173
2455832.07555267:0000023B
2455832.07557582:00000303

有人知道如何通过 MSSQL 查询进行转换吗?

【问题讨论】:

  • 请问这些日期/时间是什么时候?没有它,我们怎么知道?
  • @gbn:我打赌现在是 2011 年 9 月 27 日星期二,世界标准时间 13:48(13:48:43 到 13:48:49 之间)。

标签: sql-server time timestamp hex


【解决方案1】:

我不了解 MSSQL,但您的时间戳格式(冒号左侧的部分)看起来像朱利安日期:自公元前 4713 年 1 月 1 日(UT)中午以来经过的(小数)天数。从十进制位数来看,时间分辨率似乎在一毫秒左右。您可以通过 unix_timestamp = (jd-2440587.5)*86400 将 Julian 日期转换为 Unix 时间戳。我不明白第二个字段(十六进制部分)的含义,但我猜它不是时间戳的一部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 2018-09-08
    • 1970-01-01
    • 2020-11-22
    相关资源
    最近更新 更多