• 日期函数DATEDIFF() 计算日期之差


    datediff()函数返回两个日期之间的时间。

    detediff(datepart,startdate.endddate)

    satrtdate和enddate是你要计算的开始时间和截止时间

    datepart可以是下面的值:

    年,月 ,周,日,时,分,秒

    举例:

    getdate() 注释:当前日期                    

    下图所示:

    假如今天是七月十四号  

    1 七月十三和七月十四就返回一

    2七月十四就和七月十三返回负一

    3七月十四和七月十四则返回0

    1. select datediff(year,'2018-07-13',getdate());--output:1
    2. select datediff(year,getdate(),'2018-07-13');--output:-1
    3. select datediff(year,getdate(),getdate());--output:0

    QUARTER(date)  注释:返回当前季度 一般是1-4

    select datediff(quarter,'2018-07-13',getdate());--output:4

    同理后面  月  日  周  类似:

    月:

    select datediff(month,'2018-07-13',getdate());--output:12

    日:

    1. select datediff(day,'2018-07-13',getdate());--output:366
    2. select datediff(day,'2018-07-13','2019-07-13');--output:365

    周:

    1. select datediff(week,'2018-07-13',getdate());--output:53
    2. select datediff(ww,'2019-06-13',getdate());--output:5

     一周的天数 按照周有几天来计算:

    1. select datediff(w,'2018-07-13',getdate());--output:366
    2. select datediff(w,'2019-06-13',getdate());--output:31

     小时:

    1. select datediff(w,'2018-07-13',getdate());--output:366
    2. select datediff(w,'2019-06-13',getdate());--output:31

    分钟: 

    select datediff(minute,'2019-07-14 11:00:00',getdate());--output:675

    秒:

    select datediff(minute,'2019-07-14 11:00:00',getdate());--output:675

     毫秒:

    select datediff(minute,'2019-07-14 11:00:00',getdate());--output:675

     最后举例:

    查询一个超时要过期未过期 但是有一个月就要过期的商品:

    1. select * from goods
    2. where datediff(day,GETDATE(),Expire)<=30
    3. and datediff(day,GETDATE(),Expire)>0
  • 相关阅读:
    如何在latex中高亮文本
    MKL稀疏矩阵运算示例及函数封装
    2.3.1 协程设计原理与汇编实现
    软考中级-软件设计师-第2章 计算机组成与体系结构
    《算法导论》第13章-红黑树 13.1-红黑树的性质 13.2-旋转
    次时代终端工具:WindTerm(含下载)
    5分钟了解数据结构
    工控机与普通电脑的区别对于工业自动化应用至关重要
    HttpRunner--安装使用
    士兰微六轴陀螺仪SC7I22在AR/VR头显设备中的应用
  • 原文地址:https://blog.csdn.net/weixin_43737594/article/details/125537274