我的问题是一个表,它将日期和时间存储在两个单独的列中作为整数。我知道sql server是如何在内部存储日期的 - 第一个4字节int表示1900 - 01 - 01之后的日期,第二个4字节int表示午夜之后的日期,但是我的值与此不对应。
直接示例 - 日期:77262,时间:3767327。
时间值转换为datetime(二进制(4)转换后) - 1900-01-01 03:29:17.757但是日期甚至没有接近它应该是的,我确定它必须在某个地方在2012年7月。我可能遗漏了一些基本的东西,但我真的找不到任何解决方案。
答案 0 :(得分:0)
无法将整数值直接转换为日期。 您必须转换为日期时间,例如 - >
select cast(41535 as datetime)
然后到日期类型 - >
select cast(cast(41535 as datetime) as date)