我正在查询由另一家公司维护的数据库,并且正在从其数据库中提取日期,但是它们以整数形式存储。它们具有9位数字值,例如:
等
当我使用他们的前端应用程序查询同一条记录时,这些日期显然都在过去几天之内,但是,我无法确定他们使用的日期格式。尝试将这些值转换或转换为日期时间或类似的所有抛出错误。
以5开头的9位日期格式是SQL Server吗?还是这家第三方公司制定的惯例?如果任何人都有任何信息,即使有关日期格式可能是什么以及如何进行转换,那也将非常有帮助。
编辑:
以下是一些比较SQL值和前端日期时间的示例。
595678891 - 11/14/18 9:05
595672666 - 11/13/18 20:35
581623591 - 06/06/18 18:06
我相信所有前端时间都在美国东部时间。
答案 0 :(得分:5)
这只是一个猜测,但距 2000-01-01
示例
Select dateadd(second,595678891,'2000-01-01')
返回
2018-11-16 10:21:31.000
答案 1 :(得分:0)
这看起来像是以epoch的形式存储的,它是一个整数,因为它表示自所选开始日期起经过的时间。
您必须知道开始日期才能正确转换。例如,最常见的时期是1970年1月1日开始的Unix时期。所有日期都是从该日期起经过的时间计算的。
您也许可以在线使用epoch calculators来确定所使用的纪元日期。我对您的样本进行了尝试,发现第一项的2000年1月1日返回了2018年11月16日,这似乎符合您的期望。
您需要确定正在使用哪个时期以确保...