【发布时间】:2017-06-17 09:16:33
【问题描述】:
我的好参考是 How to filter my results so it shows the last four months of data - sql
到现在为止
SELECT ItemCode, SUM(QuantityOrdered) AS Total_Quantity
FROM OrderDetail
GROUP BY ItemCode
ORDER BY SUM(QuantityOrdered) DESC;
显示
ItemCode Total_Quantity
PL 1200
MA 975
153 200
虽然 PL 的订单是 2011 年 9 月 23 日的 200 份 2014 年 2 月 3 日的 200 份 2016 年 12 月 6 日的 200 份 2017 年 1 月 21 日 200 份
我怎样才能过滤掉它以仅显示今天月份的最近四个月的结果?
我可以在查询设计或 SQL 代码上做点什么吗?
关于
WHERE dbo_SO_SalesOrderHeader.OrderDate >= dateadd(month, -4, cast(getdate() AS DATE))行语法错误的任何想法。非常感谢!
SELECT dbo_SO_SalesOrderDetail.ItemCode, SUM(dbo_SO_SalesOrderDetail.QuantityOrdered) AS Total_Quantity, dbo_SO_SalesOrderHeader.OrderDate
FROM dbo_SO_SalesOrderDetail INNER
JOIN dbo_SO_SalesOrderHeader ON dbo_SO_SalesOrderDetail.SalesOrderNo = dbo_SO_SalesOrderHeader.SalesOrderNo
WHERE dbo_SO_SalesOrderHeader.OrderDate >= dateadd(month, -4, cast(getdate() AS DATE))
GROUP BY dbo_SO_SalesOrderDetail.ItemCode
ORDER BY SUM(dbo_SO_SalesOrderDetail.QuantityOrdered) DESC;
【问题讨论】: