zoukankan      html  css  js  c++  java
  • SQL中获取指定两个日期时间点或者时间段内所有记录语句

    经常有项目中会用到查询时间段早上9点到第二天7点之间的所有记录,并根据当前时间来统计分析所有当日当班时间段内的所有定单总数(对比现在的时间和固定两个时间点中间的所有记录)可以如下去操作:

    Declare @TranslateStartTime nvarchar(20)
    Declare @TranslateEndTime nvarchar(20)

    if DatePart(hour,getdate())>9
    begin
    --早上9点以后
    set @TranslateStartTime=convert(nvarchar(4),DatePart(yyyy,getdate()),4)
    set @TranslateStartTime=@TranslateStartTime + '-' +convert(nvarchar(4),DatePart(m,getdate()),4)
    set @TranslateStartTime=@TranslateStartTime + '-' +convert(nvarchar(4),DatePart(day,getdate()),4)
    set @TranslateStartTime=@TranslateStartTime + ' ' +'9:00:00'

    set @TranslateEndTime=convert(nvarchar(4),DatePart(yyyy,dateadd(day,1,getdate())),4)
    set @TranslateEndTime=@TranslateEndTime + '-' +convert(nvarchar(4),DatePart(m,dateadd(day,1,getdate())),4)
    set @TranslateEndTime=@TranslateEndTime + '-' +convert(nvarchar(4),DatePart(day,dateadd(day,1,getdate())),4)
    set @TranslateEndTime=@TranslateEndTime + ' ' +'7:00:00'

    end

    else
    begin
    --早上9点之前
    set @TranslateStartTime=convert(nvarchar(4),DatePart(yyyy,dateadd(day,-1,getdate())),4)
    set @TranslateStartTime=@TranslateStartTime + '-' +convert(nvarchar(4),DatePart(m,dateadd(day,-1,getdate())),4)
    set @TranslateStartTime=@TranslateStartTime + '-' +convert(nvarchar(4),DatePart(day,dateadd(day,-1,getdate())),4)
    set @TranslateStartTime=@TranslateStartTime + ' ' +'9:00:00'

    set @TranslateEndTime=convert(nvarchar(4),DatePart(yyyy,getdate()),4)
    set @TranslateEndTime=@TranslateEndTime + '-' +convert(nvarchar(4),DatePart(m,getdate()),4)
    set @TranslateEndTime=@TranslateEndTime + '-' +convert(nvarchar(4),DatePart(day,getdate()),4)
    set @TranslateEndTime=@TranslateEndTime + ' ' +'7:00:00'

    end

    select @TranslateStartTime

    select @TranslateEndTime

    SQL查询语句所有当前时间段内的记录:
    Select * from OrderList Where  DateDiff(mi,@TranslateStartTime,translatetime)>=0 and DateDiff(mi,@TranslateEndTime,translatetime)<=0)

  • 相关阅读:
    手写vite
    单点登录的实现原理
    vue中和react中key的用法
    手写MVVM
    rtvue-lowcode:一款基于uniapp框架和uview组件库的开源低代码开发平台
    博图TIA中ModbusRTU_CRC校验程序的实现
    博图TIA中ModbusRTU Over TCP/IP通讯的实现
    webpack之file-loader和url-loader的区别
    Webpack中Loader和Plugin的区别?编写Loader,Plugin的思路?
    spark-sql 与hive 常用函数
  • 原文地址:https://www.cnblogs.com/xqf222/p/3306871.html
Copyright © 2011-2022 走看看