关于日期范围如何减去天数
我有一SQL语句是这样的,如下:
select * from ov_sal_ord_detail
WHERE ( ov_sal_ord_detail.sheet_kind = 'SAL04' )
AND ( Convert(char(10),ov_sal_ord_detail.sheet_date,121)>='2012-06-01'
And Convert(char(10),ov_sal_ord_detail.sheet_date,121)<='2012-06-30' And
ov_sal_ord_detail.part_item_no<='ZZZ' And ov_sal_ord_detail.audit_sw like '%' )
意思是:查询2012-6-1至2012-6-30范围的所有销售订单
我现在问题和要求:想查询最近7天的所有数据,即查询当前日期,然后往前推7天,这一时间范围内的订单信息。
我使用的是getdate()函数获取当前日期,但是向前推7天的一至不成功(即起始日期不成功),查询出来是所有时间范围内的订单,所以想请教各位我的起始日期范围应该如何设置,谢谢!
我目前的语句如下:但是不成功
select * from ov_sal_ord_detail
WHERE ( ov_sal_ord_detail.sheet_kind = 'SAL04' )
AND ( Convert(char(10),ov_sal_ord_detail.sheet_date,121)>='(trunc(getdate()-7))'
And Convert(char(10),ov_sal_ord_detail.sheet_date,121)<='getdate()' And
ov_sal_ord_detail.part_item_no<='ZZZ' And ov_sal_ord_detail.audit_sw like '%' )
出错位置:ov_sal_ord_detail.sheet_date,121)>='(trunc(getdate()-7))'此处想请教各位我应该如何修改?
此处成功:Convert(char(10),ov_sal_ord_detail.sheet_date,121)<='getdate()'
请各位高手多多指教,不胜感激
------解决方案--------------------SQL code
>=getdate()-7
------解决方案--------------------
SQL code
>=dateadd(dd,-7,getdate())