sqlserver2005中怎样写SQL语句能将值‘1292806800’(类型为bigint)转换成时间类

2024-12-23 05:20:55
推荐回答(1个)
回答1:

SQL Server 2005的datetime类型数据使用8字节,前4字节表示日期部分,后四个字节表示时间部分。
declare @i bigint, @d datetime
set @i = 1292806800

set @d = cast((@i / 4294967296.0 ) as datetime)
print @d
输出结果:
01 1 1900 7:13AM
除以4294967296.0(2的32次幂)就是为了将后4个字节的数据作为时间部分处理。