zoukankan      html  css  js  c++  java
  • sql server计算两个日期之间差值的datediff()函数

    SQL Server中提供了一个DATEDIFF()函数用来计算两个日期之间的差值。

    DATEDIFF(datepart, startdate, enddate)

    其中,datepart参数表示要计算差值的部分,startdate参数表示要计算差值的开始日期(被减数),enddate参数表示要计算差值的结束日期(减数)。

    SELECT DATEDIFF(day, '2019-05-20', '2019-05-22'); -- 2

    datepart参数提供了多个候选值,方便计算各个日期部分的差值。

    datepart缩写全称
    yy, yyyy year
    季度 qq, q quarter
    mm, m month
    年中的日 dy, y dayofyear
    dd, d day
    wk, ww week
    星期 dw, w weekday
    小时 hh hour
    分钟 mi, n minute
    ss, s second
    毫秒 ms millisecond
    微妙 mcs microsecond
    纳秒 ns nanosecond

    这里的精度从上往下依次提高,精度越大,时间范围应该设置的越小,否则会报【[S0000][535] datediff 函数导致溢出。用于分隔两个日期/时间实例的日期部分的数字太大。请尝试使用日期部分精度较低的 datediff。】这样的错误。

    SELECT DATEDIFF(yy, '2019-05-20', '2020-05-22'); -- 1

    另外,如果要计算差值的开始日期和要计算差值的结束日期中,指定的计算部分为开始日期大于结束日期,则返回结果是负数。

    SELECT DATEDIFF(yy, '2023-05-20', '2020-05-22'); -- -3

    "因为经历过了,所以才波澜不惊。"

  • 相关阅读:
    django基础之ORM基础知识
    Centos7 搭建sonarQube
    centos7安装部署SVN
    centos7.5 SVN 搭建
    centos 7 部署 zookeeper
    centos7 发送邮件
    Centos7安装配置Gitlab-CE
    openldap 双主模式部署
    K8s一键安装
    ELK实战部署
  • 原文地址:https://www.cnblogs.com/yanggb/p/11839752.html
Copyright © 2011-2022 走看看