2017-03-27 6 views
0

私はこれがあります。クエリSQLの列に

Num Store  Credit No_credit 
1  Store 1 10   20 
2  Store 3 50   80 

このことが可能です:

Id  Store  Situation Total 
1  Store 1  Credit  10 
2  Store 1  No credit 20 
3  Store 3  Credit  50 
4  Store 3  No credit 80 

を私はこれがしたいですか?

ありがとうございました。

+0

に応じて検索結果 – maSTAShuFu

+0

、これは非常に簡単ですフォーマットし、あなた自身のためにそれに答えるようにしたい...ヒントがあり、店舗や状況として、グループの合計を取得してください:ここでは、ほとんどのデータベースで動作する方法があります結合して各グループに1つの行を表示します。 – maSTAShuFu

+1

ご使用のデータベースで質問にタグを付けてください。 –

答えて

1

これはちょうど、条件付きの集約です:

select store, 
     sum(case when situation = 'Credit' then total else 0 end) as Credit, 
     sum(case when situation = 'No Credit' then total else 0 end) as NoCredit, 
from t 
group by store; 

あなたはまたidを追加することができます。

select row_number() over (order by store) as id, 
     store, 
     sum(case when situation = 'Credit' then total else 0 end) as Credit, 
     sum(case when situation = 'No Credit' then total else 0 end) as NoCredit, 
from t 
group by store 
order by store;