sqlserver datetime与smalldateTime
大家好,又见面了,我是你们的朋友全栈君。datetime 从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确度为百分之三秒(等于 3.33 毫秒或 0.00333 秒)。
–A. 测试 datetime 精度问题 DECLARE @t TABLE(date char(21)) INSERT @t SELECT ‘1900-1-1 00:00:00.000’ INSERT @t SELECT ‘1900-1-1 00:00:00.001’ INSERT @t SELECT ‘1900-1-1 00:00:00.009’ INSERT @t SELECT ‘1900-1-1 00:00:00.002’ INSERT @t SELECT ‘1900-1-1 00:00:00.003’ INSERT @t SELECT ‘1900-1-1 00:00:00.004’ INSERT @t SELECT ‘1900-1-1 00:00:00.005’ INSERT @t SELECT ‘1900-1-1 00:00:00.006’ INSERT @t SELECT ‘1900-1-1 00:00:00.007’ INSERT @t SELECT ‘1900-1-1 00:00:00.008’ SELECT date,转换后的日期=CAST(date as datetime) FROM @t /*–结果 date 转换后的日期 ——————— ————————– 1900-1-1 00:00:00.000 1900-01-01 00:00:00.000 1900-1-1 00:00:00.001 1900-01-01 00:00:00.000 1900-1-1 00:00:00.009 1900-01-01 00:00:00.010 1900-1-1 00:00:00.002 1900-01-01 00:00:00.003 1900-1-1 00:00:00.003 1900-01-01 00:00:00.003 1900-1-1 00:00:00.004 1900-01-01 00:00:00.003 1900-1-1 00:00:00.005 1900-01-01 00:00:00.007 1900-1-1 00:00:00.006 1900-01-01 00:00:00.007 1900-1-1 00:00:00.007 1900-01-01 00:00:00.007 1900-1-1 00:00:00.008 1900-01-01 00:00:00.007 (所影响的行数为 10 行) –*/ GO
smalldateTime 从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据精确到分钟。29.998 秒或更低的 smalldatetime 值向下舍入为最接近的分钟,29.999 秒或更高的 smalldatetime 值向上舍入为最接近的分钟。
–returns time as 12:35 SELECT CAST(‘2000-05-08 12:35:29.998’ AS smalldatetime) GO –returns time as 12:36 SELECT CAST(‘2000-05-08 12:35:29.999’ AS smalldatetime) GO
注意——-
datetime用两个 4字节的整数内部存储datetime数据类型的值。第一个字节存储basedate(1900年1月1日)之前或者之后的天数。基础日期是系统参考日期。不允许早于1753年1月1日的datetime的值。另外一个4字节存储以午夜后毫秒数所代表的每天的时间。
smalldatetime 数据类型存储日期和每天的时间,但精确度低于datetime.sqlserver将smalldatetime的值存储为两个2字节的整数。第一个2字节存储1900年1月1日后的天数。另外一个2字节存储午夜后的分钟数。日期范围从1900年1月1日到2079年6月6日,精确到分钟。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144432.html原文链接:https://javaforall.cn
相关文章
- smalldatetime mysql_SQLSERVER中datetime和smalldatetime类型分析说明「建议收藏」
- SQL Server中妙用时间——平等而又精谨的时光(sqlserver中时间)
- 优化解决SQLServer性能瓶颈:一步一步优化(sqlserver瓶颈)
- SQL Server 主机命名规范(sqlserver主机名)
- 如何使用SQL Server查看表内容(sqlserver查看表内容)
- 如何在SQL Server中截取字符串?(sqlserver截取字符串)
- 数据库建立SQLServer数据库:一步一步到达成功(建立sqlserver)
- 小程序实现SQLServer数据存取(小程序sqlserver)
- 深度探索SQL Server带来的持久价值(在于与sqlserver)
- 都不会不要输在别人之前,学会SQLServer吧(别人连sqlserver)
- SQLServer在学术研究中的应用(sqlserver论文)
- SQL Server计数器:使用心得分享(sqlserver计数器)
- SQL Server表:如何处理数据库过多的负担?(sqlserver表过多)
- SQLServer中如何实现行合并(sqlserver合并行)
- 备份SQL Server自动备份:为数据保驾护航(sqlserver自动)
- 如何充分利用SQLServer进行编程练习(sqlserver 练习)
- SQL Server给IP安装设置指南(sqlserver用ip)
- sql体验SQL Server:本周SQLServer之旅(sqlserver 本周)
- SQLServer的使用有点儿猛!(sqlserver有点)
- 在SQLServer中找寻小时差的秘密(sqlserver小时差)
- 挑战无限:SQL Server竞赛就此打响!(sqlserver大赛)
- 利用SQLServer列拆分轻松实现字符串分割(sqlserver列拆分)
- SQLServer日期加减操作简单实用,实现时间计算轻松自如(sqlserver日期加减)
- Qt技术与SQLServer的完美结合(qt与sqlserver)
- 使用SQLServer获取插入记录后的ID(自动编号)