--按照时间段查询当前时间的前8点到后8点数据
--大于下列时间
select (case when GETDATE() < CONVERT(varchar(10),GETDATE(),120)+' 08:00:00'
then CONVERT(varchar(10),dateadd(dd,-1,GETDATE()),120)
else CONVERT(varchar(10),GETDATE(),120)
end)+' 08:00:00'
--小于下列时间
select (case when GETDATE() < CONVERT(varchar(10),GETDATE(),120)+' 08:00:00'
then CONVERT(varchar(10),GETDATE(),120)
else CONVERT(varchar(10),dateadd(dd,1,GETDATE()),120)
end)+' 08:00:00'
总结:实现以上查询,主要使用了case when语句,通过判断当前时间是否满足给定的条件,然后使用不同的语句进行查询。