SQL Server 2008 各种DateTime的取值范围
在SQL SERVER中DATETIME表示的时间为00:00:00到23:59:59.997,它的时间精度为1/300秒,在使用时会舍入到舍入到 .000、.003 或 .007 秒三个增量。如下表是DATETIME秒的小数部分精度的舍入。
用户指定的值
使用DateTime类型时系统存储的值
1998-1-1 23:59:59.990
1998-1-1 23:59:59.991
1998-01-01 23:59:59.990
1998-1-1 23:59:59.992
1998-1-1 23:59:59.993
1998-1-1 23:59:59.994
1998-01-01 23:59:59.993
1998-1-1 23:59:59.995
1998-1-1 23:59:59.996
1998-1-1 23:59:59.997
1998-1-1 23:59:59.998
1998-01-01 23:59:59.997
1998-1-1 23:59:59.999
1998-01-02 00:00:00.000
在SQL SERVER 2008中新增了Datetime2类型,可以提供更高的时间精度,且可以自定义时间精度,以后可以使用这种数据类型。Datetime2的精度是100 纳秒。
SQL Server 2008除了DateTime和SmallDateTime之外,又新增了四种时间类型,分别为:date,time,datetime2和datetimeoffset。
各时间类型范围、精度一览表:
数据类型
时间范围
精度
Smalldatetime
1900-01-01 到 2079-06-06 00:00:00 到 23:59:59
分钟
Datetime
1753-01-01到9999-12-31 00:00:00 到 23:59:59.997
3.33毫秒
Time
00:00:00.0000000 到 23:59:59.9999999
100 纳秒
Date
0001-01-01 到 9999-12-31
天
Datetime2
0001-01-01 到 9999-12-31 00:00:00 到 23:59:59.9999999
100 纳秒
Datetimeoffset
0001-01-01 到 9999-12-31 00:00:00 到 23:59:59.9999999 -14:00 到 +14:00
100 纳秒
各时间类型表达式一览表: 数据类型 输出 time 12:35:29. 1234567 date 2007-05-08 smalldatetime 2007-05-08 12:35:00 datetime 2007-05-08 12:35:29.123 datetime2 2007-05-08 12:35:29. 1234567 datetimeoffset 2007-05-08 12:35:29.1234567 +12:15
版权声明
本文仅代表作者观点,不代表博信信息网立场。