• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:集計結果を横一列に並べたい)

SQLでテーブルのデータを集計し、横一列に表示する方法

このQ&Aのポイント
  • SQLを使用して、テーブルのデータを指定のフィールドで集計し、結果を横一列に表示する方法について質問があります。
  • 以下のようなテーブルのデータをKBNフィールドの値別に集計し、その結果を横一列に表示したいです。
  • 期待する結果は、指定したフィールド名と集計結果の数値が横一列に表示される形です。このような結果を得るために、どのようなSQL文を使用すればよいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

SQLは基本的にあらかじめ決まった列数しか返せません。 KBNの種類が001,002,003,004の4種類と判明している限りにおいては以下の通り可能ですが、汎用的なものはOracleではできません。 SELECT SUM(CASE WHEN KBN='001' THEN 1 ELSE 0 END) "001", SUM(CASE WHEN KBN='002' THEN 1 ELSE 0 END) "002", SUM(CASE WHEN KBN='003' THEN 1 ELSE 0 END) "003", SUM(CASE WHEN KBN='004' THEN 1 ELSE 0 END) "004" FROM TABLE

aiai0223
質問者

お礼

ご回答ありがとうございます。 環境がOracle8だったので、CASEは使えませんでしたが、代わりに DECODEを使う事で対処できました。 ありがとうございました。

関連するQ&A