--按照时间段查询当前时间的前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语句,通过判断当前时间是否满足给定的条件,然后使用不同的语句进行查询。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐