アプリ版:「スタンプのみでお礼する」機能のリリースについて

添付画像の様なSELECTによる表の変換方法を教えてください。
最終的には変換した結果が帳票に出力されます。

「SELECTによる表の変換方法を教えてく」の質問画像

A 回答 (2件)

縦の行毎に並ぶ項目値を、横の列として展開する、定番の手法



select 縦に並べたい項目
, sum(case 条件A then 横に並べたい項目 end) as 条件Aの列
, sum(case 条件B then 横に並べたい項目 end) as 条件Bの列
, ...
from 表
group by 縦に並べたい項目
    • good
    • 0

画像がつぶれてて、何が書いてあるのかがよくわからないので、何をすればいいかがわかりません。



・Excelの画面みたいですが、
 元にするデータがExcel(等) なのか、 データーデースのデータなのか
 データベースのデータなら、
  使っているデータベースシステムは何なのか
  テーブル定義はどうなっているのか?
   各列はどんな意味になっているのか
 ・出力は
   Excelのその位置に直接書き込む必要があるのか?データだけ所得して別途処理するのか
   その出力例通りに出力されるSQLでなければならないのか
   必要なデータさえ取得できれば、あとの加工は別途プログラムでするのか


かろうじて見えるところから想像すると
 見出し,期間1の集計, 期間2の集計, 期間3の集計
という表になってる気がします

 見出し,期間1, 期間1の集計  
 見出し,期間2, 期間2の集計  
 見出し,期間3, 期間3の集計  
というSQLなら比較的簡単です。
これを横に並べる、というのはSQLでは難しいです(不可能ではない)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!