Sql Server 新的日期类型

时间:2022-08-31 14:30:20

新的日期类型:是出现在2008中的在2005中没有的日期类型。

1,Date 数据类型  2,time 数据类型  3, datetime2 数据类型  4, datetimeoffset 数据类型

1,Date 数据类型 日期。格式:YYYY-MM-DD 注释:支持的范围是从 '1000-01-01' 到 '9999-12-31' 。它的存在避免了我们取值的时候产生日期之外的数据 12AM

DECLARE @Date AS DATE SET @Date=GETDATE() print @Date    结果:2017-04-03

2,time 数据类型  刚好和Date类型相反 他可以只取时间部分的值,排除日期部分的值。

DECLARE @time AS TIME SET @time=GETDATE() print@time      结果:16:50:01.1830000

3, datetime2 数据类型 相比于DATETIME 增加了取值范围 最高范围为 7  代表着小数位数可以取7位 如果不要小数位数的话 则 为 0 就行

DECLARE @DATETIME2 AS DATETIME2(0) SET @DATETIME2=GETDATE() print @DATETIME2            结果:2017-04-03 16:57:32
             DECLARE @DATETIME2_ AS DATETIME2(7) SET @DATETIME2_=GETDATE() print @DATETIME2_       结果:2017-04-03 16:57:32.3230000

4, datetimeoffset 数据类型 这个数据类型的存在我认为他只是为了解决 时区时差的问题: 他的存在可以对时间进行  + /-  hh:mm  (比如说美国和中国时间相差12小时 )

DECLARE @DATETIMEOFFSET_ AS  DATETIMEOFFSET(0) SET @DATETIMEOFFSET_='2017-12-04 21:21:21 -12:00'   减去 12小时