我有一张名为SOITEM的 table . 在该表中,必须对TOTALPRICE列进行求和,并按月计算总销售额,其中带有日期的列称为DATELASTFULFILLMENT . 我想比较2014年1月到2015年1月,2014年2月和2015年2月等的销售形式 .
到目前为止,我得到了这个,但我不确定如何继续 .
Select SUM(SOITEM.TOTALPRICE)
FROM SOITEM
WHERE DATELASTFULFILLMENT>='2014-01-31' AND DATELASTFULFILLMENT<='2014-01-31'
但它只会导致2014年1月的总数....谢谢 .
4 回答
您可以考虑使用日期字段中的月/年对结果进行分组,然后使用每个组计算SUM():
您可以see an interactive example of this here,结果如下所示:
这适用于MySQL . 我假设MS SQL应该是相同的 .
在select语句中使用嵌套查询 - 注意嵌套查询中YEAR的减法以撤回上一年的摘要:
或者你可以这样做 .
您首先根据月份日期对结果进行分组,计算会将日期转换为日期所在的月份的第1天 . 然后我们使用这些结果并加入回到它,以获得去年的结果 .