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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 用计算机亩换算成平方,平方米亩换算(平方米换算亩计算器)

    1平方米(㎡)=0.0015亩1亩=666.6666667平方米(㎡)平方米(㎡,英文:Squaremeter),是面积的公制单位。定义为边长为1米的正方形的面积。在生活中平方米通.使用国家规定的换算公式来进行换算。基本单位数量换算(按使用频率排序)。1亩=666.67平方米100平方米=0.15亩——就是农民朋友口语说的一分半地。1000平方米=1..1亩=60平方丈,1米=0.3…

    2022年4月9日
    1.4K
  • 日常IT技巧总结_it工作写经验总结

    日常IT技巧总结_it工作写经验总结一、Windows问题处理技巧Win7插入手机usb弹出窗口关闭1.按“WIN+R”弹出运行,在运行界面输入【services.msc】,点击确定,进入服务;2.在服务列表找到“ShellHardwareDetection”服务,双击打开;3.在弹出的设置对话框,将服务的“启动类型”设置为“自动”,并单击“启动”,按“确定”保存设置。4.再次打开“运行”,输入“gpedit…

    2025年10月20日
    5
  • common-dbutils.jar学习心得

    common-dbutils.jar学习心得

    2021年5月24日
    203
  • 在手写数字识别的例子中_手写识别

    在手写数字识别的例子中_手写识别1.概念介绍:图像识别(ImageRecognition)是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对像的技术。 图像识别的发展经历了三个阶段:文字识别、数字图像处理与识别、物体识别。机器学习领域一般将此类识别问题转化为分类问题。手写识别是常见的图像识别任务。计算机通过手写体图片来识别出图片中的字,与印刷字体不同的是,不同人的手写体风…

    2025年5月24日
    5
  • 2021最新Java零基础自学教程,java从入门到精通

    2021最新Java零基础自学教程,java从入门到精通Java是一门用途广泛的语言,不但可以用来开发网站后台、PC客户端和AndroidAPP,还在数据分析、网络爬虫、云计算领域大显身手。从学术的角度讲,Java是一门面向对象的编程语言,初学者需要花费不少时间来熟悉面向对象的概念、语法和编程思想,有不理解的地方请一定要坚持,多花时间编写代码自然会豁然开朗。只有一步一个脚印,踏踏实实学习,才能从零基础到入门,再到精通。大家在学习的过程中也要多看几套Java教程,不要死啃一本书,这样才能才能博采众长,进步更快。今天分享的也是我在自

    2022年6月20日
    34
  • SSH_三大框架简单介绍

    SSH_三大框架简单介绍

    2021年7月10日
    110

发表回复

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

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