• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL文で統計表を作りたい)

SQL文で統計表を作成!販売店別の販売件数を一覧表示する方法。

このQ&Aのポイント
  • SQL文で統計表を作成し、販売店別の販売件数を一覧表示する方法について教えてください。データベースはOracle10gを使用しています。
  • 販売履歴テーブルのデータを元に、販売店別の販売件数を集計するためのSQL文を作成したいです。結果は販売日付ごとに表示されるようにしたいです。
  • Oracle10gのSQL文(SQLPLUS可)を使用して、販売履歴テーブルのデータをもとに販売店別の販売件数を一覧表示する方法を教えてください。

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

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

私の知る限り、Oracleでは列数を可変には出来ません。 販売店の名前が変わる点は別途、販売店マスタを儲け、 コード+名前として管理するのが普通です。こうすれば 名前が変わってもコードは同じなので、SQLの変更が 不要です。 ところで、このようにして得られた結果セットは何処で どのように使われているのでしょう? 前にも記述しましたが、AccessにはTransferクエリという ものがあり、255フィールド以内で可変列抽出が可能です。

kaizoku01
質問者

お礼

ご回答ありがとうございました。 実際のところ、毎回同じ統計情報を取りたいのではなく、 ある日は横軸に日付、縦軸に時間で販売数を抽出したり、 ある日は日付と品名で抽出したりと、 その時々思いつくまま違う条件で調査します。 しかも、50台のLinuxサーバがあり、 telnet接続し、sqlplusを起動し、データをselect。 そして結果をエクセルにまとめ直すと言うのをやってました。 エクセルにまとめなおすのが面倒なので、 簡単にできないかなと思って質問させて頂きました。 まあ、調査する頻度も少ないので、今後も手集計します。 ありがとうございました。

kaizoku01
質問者

補足

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

その他の回答 (1)

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

思いつきでは以下の感じです。 SELECT 販売日付 ,SUM(DECODE(販売店,'A',1,0)) A ,SUM(DECODE(販売店,'B',1,0)) B ,SUM(DECODE(販売店,'C',1,0)) C FROM 販売履歴テーブル GROUP BY 販売日付 でも、列の数が多いと大変かも知れませんね。 Accessにリンクできる環境なら、Transferクエリという手もあります。

kaizoku01
質問者

補足

ご回答ありがとうございます。 販売店は増えたり減ったり名前が変わったりするので、 横軸(販売店)を自動的に可変にすることは可能でしょうか?

関連するQ&A