归元

在mssql中将时间戳转换为时间类型

SQL里面有个DATEADD的函数。时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数。所以只要把这个时间戳加上1970-01-01 08:00:00这个时间就可以得到你想要的时间了select DATEADD(second,1268738429 + 8 * 60 * 60,'1970-01-01 00:00:00')

注解:北京时间与GMT时间关系

     1.GMT是中央时区,北京在东8区,相差8个小时   

          2.所以北京时间 = GMT时间 + 八小时

例如:

   SELECT DATEADD(S,1160701488 + 8 * 3600,'1970-01-01 00:00:00')               --时间戳转换成普通时间

   SELECT DATEDIFF(S,'1970-01-01 00:00:00', '2006-10-13 09:04:48.000') - 8 * 3600       --普通时间转换成时间戳


说明:DATEADD() 函数在日期中添加或减去指定的时间间隔。

评论

© 归元 | Powered by LOFTER