在我工作的项目中,我们需要获得每月,每季度和每年的客户销售总额。我试了下面显示的查询,今天得到正确的结果。但我还需要去年的销售业绩。 (过去几年月度销售是个总和)oracle销售总查询
我真的需要一个快速修复这里,感谢每一个评论提前
SELECT
CUSTOMER,
PRODUCT,
EXTRACT(MONTH FROM DAY) MONTH,
EXTRACT(YEAR FROM DAY) YEAR,
SUM(
CASE
WHEN DAY >= TRUNC(sysdate,'MM')
THEN DAILY_SALE
ELSE 0
END) AS MONTH_SALE,
SUM(
CASE
WHEN DAY >= add_months(TRUNC(sysdate,'MM'),-3)
AND DAY < TRUNC(sysdate,'MM')
THEN DAILY_SALE
ELSE 0
END) AS THREE_MONTHL_SALE,
SUM(
CASE
WHEN DAY >= add_months(TRUNC(sysdate,'MM'),-6)
AND DAY < TRUNC(sysdate,'MM')
THEN DAILY_SALE
ELSE 0
END) AS SIX_MONTHL_SALE,
SUM(
CASE
WHEN DAY >= add_months(TRUNC(sysdate,'MM'),-12)
AND DAY < TRUNC(sysdate,'MM')
THEN DAILY_SALE
ELSE 0
END) AS YEAR_SALE
FROM
SALES_TABLE
GROUP BY
CUSTOMER,
PRODUCT,
EXTRACT(MONTH FROM DAY),
EXTRACT(YEAR FROM DAY)
问题是什么用您的查询?你能提供你正在寻找的结果吗? –
您的查询将根据当前日期为您提供三个月的分组......如果您在四分之一个月结束的月份运行查询,那么这只会与公司宿舍等同。所以,我的问题是,当你说“宿舍”时,你的意思是1月 - 2月 - 3月总是第1季度,还是你需要它来改变你的查询的方式? – Chipmonkey