--sql 查询当前时间的上个月16号8点到下一个月的16号8点数据
--大于如下时间
select (case when GETDATE() < CONVERT(varchar(7),GETDATE(),120)+'-16 08:00:00'
then CONVERT(varchar(7),DATEADD(Month,-1,GETDATE()),120)
else CONVERT(varchar(7),GETDATE(),120)
end)+'-16 08:00:00'
--小于如下时间
select (case when GETDATE() < convert(varchar(7),GETDATE(),120)+'-16 08:00:00'
then CONVERT(varchar(7),GETDATE(),120)
else CONVERT(varchar(7),DATEADD(Month,1,GETDATE()),120)
end)+'-16 08:00:00'
总结:计算当前时间的上个月多少号几点到下一个月多少号几点之间的数据,可以使用如上的语句进行查询。
上面的语句主要是使用了Convert()函数,case when条件判断等语句进行条件判断以及字符串的拼接,来实现查询。