sql里面如何设置查询的时间范围

sql里面如何设置查询的时间范围,第1张

对 SQL SERVER 数据库

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

SELECT FROM 表名 WHERE 离岗时间<'2005-10-30'

SELECT FROM 表名 WHERE 离岗时间 BETWEEN '2005-1-1' AND '2005-10-30'

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

对 ACCESS

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

SELECT FROM 表名 WHERE 离岗时间<#2005-10-30#

SELECT FROM 表名 WHERE 离岗时间 BETWEEN #2005-1-1# AND #2005-10-30#

如果数据库中对应的数据库字段类型为datetime类型,那么查询时间是最好使用Datediff函数来判断,而不是直接用大于小于等,比如

2016-01-22 11:12:07

2016-01-21 23:12:07

2016-01-21 1:1:07

如果你的区间是按照天为单位那么可以用

DATEDIFF(d,datevalue,GETDATE())>0 代表比今天早的数据

DATEDIFF(d,datevalue,GETDATE()) BETWEEN -5 AND 5

代表数据距今天前后5天的数据

select from 表 where 日期字段>='开始日期' and 日期字段<='截止日期'  and convert(char(8),日期字段,108)>='开始时间' and convert(char(8),日期字段,108)<='截止时间'。

SELECT FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'。

例如:

select from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15' 

and convert(char(8),dDate,108)>='8:00:00' and convert(char(8),dDate,108)<='9:00:00'

select from table1 where year(d)=2010 and month(d)=7 and day(d) between 1 and 31

and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)

扩展资料:

SQL查询日期:

今天的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())=0

昨天的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())=1

7天内的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7

30天内的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30

本月的所有数据:select from 表名 where DateDiff(mm,datetime类型字段,getdate())=0

本年的所有数据:select from 表名 where DateDiff(yy,datetime类型字段,getdate())=0

参考资料:

SQL_百度百科

select from 借阅信息表 where 编号 between #2006-6-9# and #2008-9-9#

或者

select from 借阅信息表 where 编号 between "2006-6-9" and "2008-9-9"

--你想要的是不是这样?

--适用于SQL Server

declare @date1 datetime, @date2 datetime

set @date1 = '20140101'

set @date2 = '20140131'

select @date1 date1, @date2 date2,

sum(case when 预付日期 >=@date1 and 预付日期<=@date2 then 预付金额 else 0 end) 预付金额,

sum(case when 实付日期 >=@date1 and 实付日期<=@date2 then 实付金额 else 0 end) 实付金额,

sum(case when 入库日期 >=@date1 and 入库日期<=@date2 then 入库数量 else 0 end) 入库数量,

sum(case when 发票日期 >=@date1 and 发票日期<=@date2 then 发票金额 else 0 end) 发票金额

from table1

以上就是关于sql里面如何设置查询的时间范围全部的内容,包括:sql里面如何设置查询的时间范围、C#中根据时间区间查询SQL数据库中的内容,并显示在GridView中(webform)、SQL 如何查询日期在一定范围内的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10191597.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存