質問: sql server 縦データを横データに お世話になります。 下記のテーブルから下記の条件で データを出力するsql文を作成したいのです。 アドバイスお願い致します。 条件1:nameはaを抽出 条件2:ichiはグループ集計 条件3:itemはd2とd3を抽出 testテーブル name ichi item data ----- ---- ---- ---- a a1 d1 1 a a1 d2 2 a a1 d3 3 a a1 d4 4 a a2 d1 10 a a2 d2 20 a a2 d3 30 a a2 d4 40 b a3 d1 100 b a3 d2 200 b a3 d3 300 b a3 d4 400 データ出力結果 name ichi data data ----- ---- ---- ---- a a1 2 3 a a2 20 30
回答: select name,ichi ,sum(case when item = 'd2' then data else 0 end) as data_d2 ,sum(case when item = 'd3' then data else 0 end) as data_d3 where name = 'a' group by name,ichi order by ichi じゃダメですか?(未検証ですけど)