SqlServer时间戳

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SqlServer时间戳相关的知识,希望对你有一定的参考价值。

参考技术A

通常在MSSQL中没有系统的函数使用,我们使用
SELECT DATEDIFF(s, \'1970-01-01 00:00:00\', GETUTCDATE())计算,这个很简单,所以系统没有提供

但是要留意时区概念。
时间戳没有时区概念,日期时间有-且和电脑时区关联。
我们使用东八区传入DATEDIFF第三个参数,得到的是一个时间戳,这个值被理解为UTC标准时间的时间戳。再次使用在线工具转换为东八区时间时,会+8小时。这是令人困惑人的地方。

日期->时间戳->日期,使用同一时区,日期时间不会改变(其他系统默认的函数很可能将时间戳转换为带时区的日期,即当前是东八区,就会自动变为东八区日期)

SQLServer时间戳转日期格式(13位时间戳)

参考技术A select CONVERT(varchar(100),DATEADD(S,(出生日期时间戳+28800000)/1000,'1970-01-01 00:00:00'),23)

以上是关于SqlServer时间戳的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver中日期时间和时间戳之间的区别? [复制]

SQL Server 中可读格式的时间戳

在sqlserver中怎么将一个时间字串值转换成时间戳的数字形式

将 Epoch 时间戳转换为 sql server(人类可读格式)

Hivesql计算两个时间戳相差的分钟数

sql语句关于时间与时间戳