2011-05-12 167 views
12

我認爲這很常見,是嗎?每月總銷售額

如果你有一張表SALES {Customer_ID, Price, SmallDateTime date}。你如何報告每月的所有銷售額?

SELECT Sum(Price) As Total Sales FROM SALES Group By What Having What 

感謝

回答

18
SELECT YEAR(date) as SalesYear, 
     MONTH(date) as SalesMonth, 
     SUM(Price) AS TotalSales 
    FROM Sales 
GROUP BY YEAR(date), MONTH(date) 
ORDER BY YEAR(date), MONTH(date) 
+0

房地產感謝這:) – Harsha 2015-10-08 05:50:53

1
SELECT CONVERT(CHAR(7), SmallDateTime, 120) as Year_Month, 
     SUM(Price) 
    FROM Sales 
    GROUP BY CONVERT(CHAR(7), SmallDateTime, 120) 
    ORDER BY Year_Month 
0

另一種解決方案是計算一個月的第一天

Select DateAdd(d,DateDiff(d,0,[Date])-DatePart(d,[Date])+1,0) 
    , Sum(Price) 
From Sales 
Group By DateAdd(d,DateDiff(d,0,[Date])-DatePart(d,[Date])+1,0) 
0

試試這個

SELECT A.CAL_YEAR AS YEAR ,A.CAL_WEEK AS WEEK,SUM(B.SUM_OF_PROFIT) as profit FROM 
CALANDER A,SALES_FACT B WHERE A.DATE_ID=B.DATE_ID 
GROUP BY A.CAL_YEAR,A.CAL_WEEK;