sql server 计算时间戳
1.计算时间戳是当天的几点钟:
((timestemp + 28800)%86400)
timestemp:时间戳;28800:8*3600,因为时间戳为GMT(格林尼治标准时间)需要加上8小时的时差转为北京时间;86400:一天的秒数;
1524105982转换为日期2018-04-19 10:46:22
e.g. ((1524105982 + 28800)%86400) = 38782,38782:这一天过去的秒数。38782/3600=10,10:小时。38782%3600/60=46,46:分钟。38782%3600%60=22,22:秒。
2.计算时间戳为星期几:
select DATEPART(WEEKDAY,DATEADD(s,1524105982+28800,'1970-01-01 00:00:00'))
输出 5
星期天~星期六:1~7;输出5所以为星期四。
select datename(WEEKDAY,DATEADD(s,1524105982+28800,'1970-01-01 00:00:00'))
输出 星期四
3.计算时间戳为当月的几号
select DATEPART(dd,DATEADD(s,1524105982+28800,'1970-01-01 00:00:00'))
输出 19 select datename(dd,DATEADD(s,1524105982+28800,'1970-01-01 00:00:00'))
输出 19
时间
|
秒
|
1 分钟
|
60
|
1 小时
|
3600
|
1 天
|
86400
|
1 周
|
604800
|
1 月 (30.44 天)
|
2629743
|
1年 (365.24 天)
|
31556736
|