zoukankan      html  css  js  c++  java
  • 关于datetime2精度的研究

    最近一直在为datetime的事情挠头。关于用何种格式,用什么方式写入,精度等一堆乱七八糟的东西弄得我心情很糟。

    最后我总结出一句话,有东西不会的时候先看说明书(对于sqlserver来说是msdn),如果那里没有在去其它地方找,很管用。

    好了,不说废话了。说说结果。

    对于日期时间,共有这些格式:

    date:没说的,就是日期

    time:就是时间

    datetime:日期时间都有,时间精确到3(一会在告诉你什么叫精确到三)

    smalldatetime:短日期时间,时间精确到分,秒的部分以00代替

    datetime2:正主来了。

    对于datetime2,他有一些格式控制。也就是说他的精度是可控的,

    datetime2可以有从datetime2(0)到datetime2(7)八种不同的精度,其中datetime2(3)就是我刚才说的精确到3.

    datetime2(0)是精确到秒的,其后每+1他的精度就多精确到秒后面一位。

    附赠测试代码:

    select CAST('2007-05-08 12:35:29. 1234567 +12:15' AS date) AS 'date'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS time) AS 'time'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime) AS 'datetime'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS smalldatetime) AS 'small'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(7)) AS 'datetime2-7'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(6)) AS 'datetime2-6'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(5)) AS 'datetime2-5'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(4)) AS 'datetime2-4'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(3)) AS 'datetime2-3'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(2)) AS 'datetime2-2'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(1)) AS 'datetime2-1'
        ,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(0)) AS 'datetime2-0'
  • 相关阅读:
    动态库学习 第1章——演练:创建和使用动态链接库 (C++)
    MSDN学习DirectShow——第二章 入门指南
    MSDN学习DirectShow——第一章 DirectShow介绍
    《大话设计模式》读书笔记(C++代码实现) 第二章:策略模式
    MSDN学习DirectShow——第三章 关于DirectShow
    MSDN学习DirectShow——第0章 前言
    一个体育生的编程之路(二)
    Request应用
    Servlet
    实现Runnable接口(推荐使用)
  • 原文地址:https://www.cnblogs.com/mlzx1991/p/2762516.html
Copyright © 2011-2022 走看看