⑴ sql 如何查询日期在一定范围内的数据
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 table1where year(d)=2010 and month(d)=7 and day(d) between 1 and 31
and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)
(1)phpsql时间范围内扩展阅读:
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_网络
⑵ PHP SQL时间判断
“addtime里面实间是1280727915 这种格式的”--这是UNIX时间戳,表示的是从格林威治时间 1970 年 1 月 1 日 00:00:00到这个时间的秒数。
根据您的要求,只要求得当天的开始时间(秒数)和结束时间(秒数)即可。
$today = mktime(0, 0, 0, date("m") , date("d"), date("Y"));
//mktime是计算对应时间的秒数的
$tomorrow = mktime(0, 0, 0, date("m") , date("d")+1, date("Y"));
//或者 $tomorrow = $today + 86400;
SQL语句: $query = "SELECT count(id) as mun FROM form_data WHERE addtime >= $today AND addtime < $tomorrow";
⑶ sql里面如何设置查询的时间范围
对 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#
⑷ sql 判断一段时间是否在指定时间内
如图
⑸ sql日期时间段包含在一个范围内
select * from TO_ALARMS_SMS where 时间(时间所在的列名) BETWEEN '2018-1-1 07:00:00' AND '2018-3-4 10:00:00'