zoukankan      html  css  js  c++  java
  • SQL 查询某时间段的数据 datadiff 计算时间差

    datediff语法格式:datediff(day,开始时间,结束时间)

    一、应用举例:

    select * from [dbo].[Kah_Order_Sum] where datediff(day,'2016-09-20',created_time)>1

    上面的代码,将查询 'created_time' > '2016-09-20的所有记录。

    如果要查询'created_time' < '2016-09-20的所有记录,有两个方法:

    1、把最后的>1,改成<0;

    2、把两个字顺序互调,变成 datediff(day,created_time,'2016-09-20')>0

    二、讲解

    1、语法:datediff(计算单位,开始时间,结束时间)

    计算单位:一般填dayhour(天、小时)

    开始时间,结束时间:可以填字段或具体的时间。

    参见:http://www.w3school.com.cn/sql/func_datediff.asp

    2、datediff(day,created_time,'2016-09-20')>0 根据返回的是两个列的天数差,来判断是否>0。

        =0,两个时间相等,即查某一天的数据。

        >0,结束时间晚于开始时间的0天的数据,<0,结束时间早上开始时间的0天的数据。

    三、注意

    1、日期格式要加单引号,不可直接写。

    2、注意>1 和>0的区别,以datediff(day,created_time,'2016-09-20')>0为例:

         =0,是表示查找9-20当天的数据,>0是表示从9-21日开始的数据,>1是从9-22日开始的数据。

         这容易弄混。所以,一般建议填=0,>0.

         

  • 相关阅读:
    decltype类型指示符
    vector的使用
    参数使用
    CSPS模拟 43
    CSPS模拟 41
    CSPS模拟 42
    NOIP模拟 40
    NOIP模拟 39
    NOIP模拟 38
    NOIP模拟 37
  • 原文地址:https://www.cnblogs.com/luokunlun/p/5960654.html
Copyright © 2011-2022 走看看