- PR -

可変列のクロス集計

1
投稿者投稿内容
tamao30
常連さん
会議室デビュー日: 2004/11/16
投稿数: 34
投稿日時: 2006-02-16 16:29
お世話になります。

ACCESSのパススルークエリからOracleへSQLを発行して、クロス集計したいのですが、
通常は、下記のように、列ごとに集計する方法がとられるかと思いますが、

SELECT TO_CHAR(SALEDATE,'YYYY/MM/DD'),
SUM(DECODE(GENRE,'science',PRICE,0)) "科学",
SUM(DECODE(GENRE,'history',PRICE,0)) "歴史",
SUM(DECODE(GENRE,'novel',PRICE,0)) "小説",
FROM TBL_BOOK
GROUP BY TO_CHAR(SALEDATE,'YYYY/MM/DD');

集計列が可変の場合は、どうしたらよいでしょうか?
つまり、ACCESSでは、

TRANSFORM Count(SALETIME)
SELECT Format(SALETIME,'hh')
FROM TBL_BOOKS
GROUP BY Format(SALETIME,'hh')
PIVOT Format(SALETIME, 'yyyy/mm/dd')

「PIVOT Format(SALETIME, 'yyyy/mm/dd')=列の数」が集計によって変化します。
ORACLEではどのように対応すればよろしいでしょうか?

よろしくお願いいたします。

環境:WIN XP, ORACRE 10g, ACCESS2000


[ メッセージ編集済み 編集者: tamao30 編集日時 2006-02-16 16:35 ]
1

スキルアップ/キャリアアップ(JOB@IT)