2012-05-05 39 views
0

我真的無法弄清楚這個問題的好頭銜,但是我有一個問題,我相信你可以幫助我!在SQL和SUM中比較

我有一個查詢,輸出是這樣的:在價格上

Month | Year | Subcategory | PrivateLabel | Price 
------------------------------------------------- 
    1 | 2010 | 666   | No   | -520 
    1 | 2010 | 666   | No   | -499,75 
    1 | 2010 | 666   | No   | -59,95 
    1 | 2010 | 666   | No   | -49,73 
    1 | 2010 | 666   | No   | -32,95 

我想SUM,因爲所有其他的數據是一樣的。我以爲我可以用SUMGROUP BY這樣做,但我無法弄清楚如何去做,或者至少它不會輸出正確的結果。

查詢是兩個表之間的內部聯接,如果有幫助的話。

+1

啊,它看起來很亂..它應該像一張桌子! –

+0

我編輯它的格式更好..編輯必須批准,但我所做的是每行的開始4個空格 – gordatron

+2

請發佈您的查詢和所需的輸出。這非常有幫助。 –

回答

3
select 
    month 
    ,year 
    ,subcategory 
    ,privatelabel 
    ,sum(price) as [total sales] 
from 
    a inner join b ... 
where 
    any where clauses 
group by 
    month 
    ,year 
    ,subcategory 
    ,privatelabel 

如果我正確認識你..在選擇每一個科拉姆或者需要是通過對所有行中的一員或聚合函數組

加入了小提琴的應該工作..主要是因爲我不知道他的文本DDL功能,想測試它;-)(感謝邁克爾·布埃諾)

http://sqlfiddle.com/#!3/35c1c/1

注意where子句是一個佔位符..

0
select month, year, subcategory, privatelabel, sum(price) 
    from (put your query in here) dummyName 
group by month, year, subcategory, privatelabel 

基本思想是它會運行你當前的查詢來獲得上面的輸出,然後對結果進行求和和分組。 您的查詢必須在括號內,您必須提供一些名稱,例如dummyName。只要它在sql中是獨一無二的,最好不是關鍵詞,無關緊要。

可能有一種方法可以一氣呵成,但如果沒有sql查詢,我們無法提供幫助。