sqlserver datetime与smalldateTime

sqlserver datetime与smalldateTimedatetime 从1753年1月1日到9999年12月31日的日期和时间数据,精确度为百分之三秒(等于3.33毫秒或0.00333秒)。–A.测试datetime精度问题DECLARE@tTABLE(datechar(21))INSERT@tSELECT’1900-1-100:00:00.000’INSERT@t

大家好,又见面了,我是你们的朋友全栈君。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.net/144432.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • case when 判断_sqlservercase用法

    case when 判断_sqlservercase用法casewhen简单用法—改变结果SELECTCASE id WHEN21THEN ‘aaaaa’ WHEN22THEN ‘bbbbb’ELSE’其他’ END FROM hrmresource WHERE id=23casewhen复杂用法—执行不同的sqlSELECT ( CASE WHENa.id=21THEN (SELECTidFROMhrmresourceWHEREidIN(21

    2025年9月16日
    7
  • vue生成时间戳_hive时间戳转换日期

    vue生成时间戳_hive时间戳转换日期1.首先定义好一个工具类:2.在对应的文件中引入该文件:3.局部注册过滤器:

    2022年10月21日
    3
  • 倾向得分匹配结果(倾向得分匹配后怎么进行回归)

    原标题:手把手教你做倾向评分匹配-PSM本文首发于“百味科研芝士”微信公众号,转载请注明:百味科研芝士,Focus科研人的百味需求。各位科研芝士的朋友大家好,今天和大家分享一下新的知识点—PSM,或许大家早已听过这个名词了,或许你对它还是半知半解,不过没关系,希望可以通过今天的帖子帮助你对该名词有一定的理解。PSMPSM英文全称为PropensityScoreMatching,意思是倾向匹配…

    2022年4月12日
    100
  • 测试bolgo

    测试bolgo

    2021年10月25日
    57
  • 虚拟机ifconfig或ip addr不显示ip地址「建议收藏」

    虚拟机ifconfig或ip addr不显示ip地址「建议收藏」虚拟机ifconfig或ipaddr不显示ip地址报错图片:一直查不到ip地址,有重新启动很多次解决方法(1)命令查看配置文件:vi/etc/sysconfig/network-scripts/ifcfg-ens33ens33注意看这个修改的文件后缀把ONBOOT的状态no改为yes然后重启,应该就没问题了。(2):还有一种可能是因为虚拟网卡没有正常连接,解决方法是开启虚拟网卡的服务:打开任务管理器,选择服务标签,为了保险,开启所有的和vmware有关的服务检

    2022年7月27日
    10
  • 游戏建模经验分享:模型学习方法

    游戏建模经验分享:模型学习方法最近通过很多师弟的交流,我发现游戏建模初学者大多存在三个大问题,一是工具的使用不够熟练,甚至有些功能还不知道,二是对布线的规范没有太大的要求和了解,三是对游戏制作流程不清晰和板绘下的功力不够,对贴图制作用工少,甚至有些人还处于一直做白膜的阶段,那么对大多说想要要学游戏建模的学习者想要学什么:低模,高模制作,贴图材质,动作特效。毕竟很多人学的并没有那么快,建模实质就是孰能生巧,做的东西…

    2022年5月19日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号