2016-08-08 19 views
2

私はSQLに非常に慣れていて、私にとっては複雑な作業をしています。私は与えられた日に購入された様々なフルーツの数を生成しているテーブルを持っています。したがって:条件付きの合計SQL

    G. A G.B 
2016-06-01 Banana 45 0  
2016-06-01 Pear 158 0 
2016-06-01 apple 0 23 
.... dates continue 

私は、特定の日付の特定のグレードで購入されているどのように多くの果物の種類カウントする条件付き合計のいくつかの種類を開発する必要があります。したがって、上のケース(2016-06-01)では、果物203グレードA(G.A)ビットとフルーツ23グレードB(G.B)ビットがあります。

当然

Sum(case when date=date then Grade else 0). 

のいくつかの種類しかし、私は本当にここに困惑しています。してください、どんな助けも大いに評価されるでしょう!!!!

+1

あなたは、結果セットが予想サンプルを投稿することができます。また、使用しているデータベースを指定します。そして、いいえ、私は条件付き合計が必要とは思わない。シンプルな集約関数は、このトリックを行う必要があります。 – sstan

+0

DATE条件をWHERE句に移動します。 – jarlh

答えて

2

単純群句はここに(注:未テストコード)仕事をする必要があります

select date, sum(grade_a) as grade_a_sum, sum(grade_b) as grade_b_sum 
from sales 
group by date; 

をこれは、すべての日付の成績が得られます。必要に応じて個別の日付を選択することができます。

0

は、仕事をすることではない、単純なグループ..

Select 
date, 
sum(GA) as GA, 
sum(GB) as GB 
from 
Table 
group by date