• MSSQL 日期函数


    1day(date_expression)
    返回date_expression中的日期值

    select DAY(getdate())

    2month(date_expression)
    返回date_expression中的月份值
    3year(date_expression)

    4DATEADD (datepart , number , date )

    datepart

    是与 integer number 相加的 date 部分。下表列出了所有有效的 datepart 参数。用户定义的变量等效项是无效的。

    datepart                  缩写 

    year                      yy, yyyy

    quarter                    qq, q

     month                     mm, m

     dayofyear               dy, y

     day                          dd, d

     week                        wk, ww

     weekday                 dw, w

     hour                          hh

     minute                    mi, n

     second                    ss, s

     millisecond             ms

     microsecond           mcs

     nanosecond           ns

    number

    是一个表达式,可以解析为与 datedatepart 相加的 int。用户定义的变量是有效的。

    如果您指定一个带小数的值,则将小数截去且不进行舍入。

    date

    是一个表达式,可以解析为 timedatesmalldatetimedatetimedatetime2datetimeoffset 值。date 可以是表达式、列表达式、用户定义的变量或字符串文字。如果表达式是字符串文字,则它必须解析为一个 datetime 值。

    例:

    SELECT DATEADD(month, 1, '2006-08-31')

    结果:2006-09-30 00:00:00.000

    select DATEADD(ss,2,GETDATE())

    DECLARE @datetime2 datetime2;

    SET @datetime2 = '2007-01-01 01:01:01.1111111';

    --Statement                                 Result  

    -------------------------------------------------------------------

    SELECT DATEADD(quarter,4,@datetime2);   --2008-01-01 01:01:01.110(季度)

    SELECT DATEADD(month,13,@datetime2);      --2008-02-01 01:01:01.110

    SELECT DATEADD(dayofyear,365,@datetime2); --2008-01-01 01:01:01.110

    SELECT DATEADD(day,365,@datetime2);       --2008-01-01 01:01:01.110

    SELECT DATEADD(week,5,@datetime2);        --2007-02-05 01:01:01.110

    SELECT DATEADD(weekday,31,@datetime2);    --2007-02-01 01:01:01.110

    SELECT DATEADD(hour,23,@datetime2);       --2007-01-02 00:01:01.110

    SELECT DATEADD(minute,59,@datetime2);     --2007-01-01 02:00:01.110

    SELECT DATEADD(second,59,@datetime2);     --2007-01-01 01:02:00.110

    SELECT DATEADD(millisecond,1,@datetime2); --2007-01-01 01:01:01.110

     

    5、DATEDIFF()
    DATEDIFF (<datepart>, <date1>, <date2>)
    返回两个指定日期在datepart 方面的不同之处,即date2 超过date1的差距值,其结果值是一个带有正负号的整数值。

    例:

    DECLARE @startdate datetime2 = '2007-05-05 12:10:09.3312722';

    DECLARE @enddate datetime2 = '2007-05-04 12:10:09.3312722';

    SELECT DATEDIFF(day, @startdate, @enddate);

    结果:-1

    6、DATENAME()
    DATENAME (<datepart>, <date>)
    以字符串的形式返回日期的指定部分此部分。由datepart 来指定。
    7、DATEPART()
    DATEPART (<datepart>, <date>)
    以整数值的形式返回日期的指定部分。此部分由datepart 来指定。
    DATEPART (dd, date) 等同于DAY (date)
    DATEPART (mm, date) 等同于MONTH (date)
    DATEPART (yy, date) 等同于YEAR (date)
    8、GETDATE()
    以DATETIME 的缺省格式返回系统当前的日期和时间。

  • 相关阅读:
    会话状态服务器解决方法
    让笔记本在插上外置鼠标时触摸板自动关闭
    “检测到有潜在危险的 Request.Form(QueryString) 值”的解决方法
    SQL Server2008不能登录解决方法
    SqlHelper
    修改IE查看源代码编辑器
    由于启动用户实例的进程时出错,导致无法生成 SQL Server 的用户实例解决办法
    性能测试用户模型(二):用户模型图
    索引帖:性能测试新手误区系列
    性能测试用户模型(三):基础数据分析、场景数据
  • 原文地址:https://www.cnblogs.com/shouwu/p/2816988.html
Copyright © 2020-2023  润新知