我有一个数据库,里面有名为fSystemDate、fOpenned、fStatusDate等的整数字段(列)……我认为它们代表日期,但我不知道它们的格式。这些字段中的值如下:76505、76530、76554、76563。我没有与他们相关的真实日期的例子。
已解决。查看答案
我发现这种格式是一种名为Clarion的编程语言的一部分,他的日期编号从2000年12月28日开始。我可以通过两种方式将clarion数据转换为sql日期:
-
选择DATEADD(日期:76505,'28-12-1800')
其中结果将是2010-06-15 00:00:00。
-
选择转换器(日期时间,76505-36163)
其中结果是相同的。数字36163用于调整SQL。这是从1900年1月1日(MSSQL日期时间编号开始)到1800年12月28日(Clarion日期时间编号结束)之间的天数。
在我的案例中,结果是正确的,因为我向他们(我的客户)询问了您应用程序中的数据示例并比较了信息。
只给出一个数字很难帮助您。看起来你的日期是某种序列号。但没有任何其他数据点
-
时代纪元是日历系统的零点。
-
增量序列号中的勾号有多大?1天?1小时1分钟?一周?一个月?
-
源硬件/操作系统价值来源于什么计算机系统?不同的系统表示日期的方式不同,使用不同时期的不同日历系统。
-
源软件系统什么软件创造了价值?是自定义软件吗?它用什么语言写的?什么时候数据的后备存储是什么?数据库、文件系统等可能都有自己的内部日期表示。
-
表示的值如果
76563
确实是一个日期的表示,那么它表示的是什么日期?或者至少,它代表最近的日期吗?过去的约会?未来的约会?
回答你的问题是不可能的。此页面可能会帮助您:
http://www.itworld.com/article/2823335/data-center/128452-Just-dating-The-stories-behind-12-computer-system-reference-dates.html
它列出了不同计算机系统的一些常见时期:
编辑后请注意:这里有一个数据点:将76563天添加到1800年1月1日,得到日期16 August 2009
。