SQL如何按时间段查询

2022-10-07 19:06

4个回答
SELECT * FROM Record WHERE
TO_CHAR(Times,'YYYY/MM/DD') BETWEEN '2010/01/01' and '2010/12/31'
AND TO_CHAR(Times,'D') BETWEEN 2 AND 6
AND (TO_CHAR(Times,'HH24:Mi:SS') BETWEEN '08:30:00' and '12:00:00' or TO_CHAR(Times,'HH24:Mi:SS') BETWEEN '12:30:00' and '17:00:00')
'D' 是获取星期,从星期日 开始 是1 ,其他的就不用说了吧。
用 between and
时间函数各个数据库不完全相同,但思路是一样的,不要纠结时间段。
其实你上面的需求就是:
YEAR(RECORD)=2010
DAYOFWEEK BETWEEN 1 AND 5
这个样子,就是时间型字段拆分判断,根据不同数据库使用时间函数就可以了。
估计你这个是sqlserver,我给你写一下:

SELECT * FROM Record
WHERE
convert(varchar(10),Times,120) BETWEEN '2010-01-01' and '2010-12-31'
AND DatePart('w',Times) BETWEEN 2 AND 6
AND (
CONVERT(varchar(8), Times, 8) BETWEEN '08:30:00' and '12:00:00'
or
CONVERT(varchar(8), Times, 8) BETWEEN '12:30:00' and '17:00:00'
)
相关问答
如何在SQL中按时间段查询数据
5个回答2022-10-04 12:04
sql server: select * from 表 where 发生日期>'2008-7-1' and 发生日期#2008-7-1# and 发生日期扩展资料: sql查询日期语句 sele...
全文
sql 模糊查询+时间段查询
1个回答2022-09-24 11:36
select * from kucun where 时间字段 between '2009-01-02' and '2010-02-01' and ( kName like '%小%' or kLin...
全文
SQL时间段查询+模糊查询
2个回答2022-09-17 11:20
没有给出太多的信息.我就直接写吧: SELECT * FROM 表A where --这个是时间段查询 时间列 BETWEEN GETDATE()-1 AND GETDATE() --模糊查询...
全文
SQL问题 实现递归查询
1个回答2024-02-21 15:49
递归不用专门的语句呀,就是在函数中调用自己就可以了,注意一定要有递归结束的条件。
sql如何按日期中的月份查询
2个回答2022-08-30 06:15
sql按日期中的月份查询如下: SQL Server select * from [data] where  DATEPART(m,[date])=2 Access select * fro...
全文
SQL时间段的查询问题!
2个回答2022-09-10 16:28
select * from SalutionEv where datediff(dd,InsertTime,'2012-03-26')0 Salution,Name,InsertTime 一帘幽梦...
全文
SQL查询语句中,什么叫子查询?
3个回答2022-08-22 17:15
子查询或称为内部查询、嵌套查询,指的是在 SQL 查询中的 WHERE 子句中嵌入查询语句。 一个 SELECT 语句的查询结果能够作为另一个语句的输入值。 子查询可以与 SELECT、INSERT...
全文
SQL查询两个表联合查询怎么写?
1个回答2022-10-29 12:35
如下方法: select top 1 a.姓名 , b.minnum , b.maxnum from a INNER JOIN b ON a.id = b.id where b.minnum > ...
全文
sql中同年同月同日查询
2个回答2022-06-12 20:27
--查重复 select * from 学生表 a where exists(select 1 from 学生表 where convert(varchar(7),生日,120)=convert(va...
全文
SQL 复杂表查询
2个回答2022-09-19 22:18
看了头晕,为何要用中文字段呀,呵呵~ select 主表.*,工序表.工序名称,作废表.作废名称 from 主表 left 工序表 on 主表.工序代号=工序表.工序代号 left 作废表 on 主...
全文