2012-05-05 11 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でこれを行うことができると思ったが、それを行う方法を理解できないか、少なくとも正しい結果を出力しない。

クエリは、2つのテーブル間の内部結合です。私が正しくあなたを理解しています...選択中のすべてのcolumは、どちらか

がフィドルを追加したグループ内のすべての行にして、グループの一部または集約関数にする必要がある場合

+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

ノートについて知らなかったので...

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

基本的な考え方は、現在のクエリを実行して出力を上回り、その結果を合計してグループ化することです。 あなたはクエリをカッコで囲む必要があります。ダミー名。限り、それはSQLで、そして好ましくはキーワードではなく、それが何であるかは関係ありません。

これをすべて1回で実行する方法があるかもしれませんが、クエリのsqlがなければ助けません。