SQL 取值范围修改和解释

select * from report a where a.sdudate between convert(varchar,getdate()-1,120) and convert(varchar,getdate(),120)这句是什么意思?能否在当前的语句上修改,以当前时间为根据,取值一周前的数据?

这局化的意思是获取sdudate在昨天到现在24小时的数据,获取一周前的数据a.sdudate <convert(varchar,getdate()-7,120)

where datediff(dd,a.sdudate,getdate())-7=0

where datediff(dd,a.sdudate,getdate())-7>=0

这局化的意思是获取sdudate在昨天到现在24小时的数据,获取一周前的数据a.sdudate <convert(varchar,getdate()-7,120)