时间戳转换为时间格式,时间格式转换为时间戳

时间:2022-08-30 02:33:18

--在sql中将时间戳转换为时间类型


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

 

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

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

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

 

例如:

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

SELECT DATEDIFF(S,
'1970-01-01 00:00:00', '2017-02-28 17:04:48.000') - 8 * 3600 --普通时间转换成时间戳

 

--在后台代码中将时间戳转为时间类型

  public DateTime ConvertDate(long span)
{
DateTime time
= DateTime.MinValue;
DateTime startTime
= TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1, 0, 0, 0, 0));
time
= startTime.AddSeconds(span);
return time;
}

 

 

好了,数据库和后台的两种转换。