我正在MSSQL(针对SAP Business One)创建一个查询,以比较给定日期范围(使用[日期]和[日期]之间)的销售额和利润与最后一个日期范围内的销售额和利润一年,但我不知道该怎么做。
我在日期范围内使用以下代码:
WHERE t1.docdate between '[%1]' and '[%2]'
谢谢
答案 0 :(得分:0)
dateadd(year,-1,[date])
Add and Subtract Dates using DATEADD in SQL Server
请注意使用between
的含义,如下所示:Bad habits to kick : mis-handling date / range queries - Aaron Bertrand - 2009-10-16
答案 1 :(得分:0)
如果您希望数据的日期范围最后年,则有两种选择:
WHERE dateadd(year, 1, t1.docdate) between '[%1]' and '[%2]'
或
WHERE t1.docdate between dateadd(year, -1, '[%1]') and dateadd(year, -1, '[%2]')
注意:
between
约会的问题。但是,我之所以离开逻辑是因为这就是oP如何表达这个问题。