すぐに解決する必要がある単純な問題があります。私にあなたの助けを貸していただけませんか?
問題は次のとおりです。定義テーブルと履歴テーブルの 2 つのテーブルがあります。
create table revenue history(operation_date date, revenue_id number, total_revenue number);
create table revenue_definition(revenue_id number, revenue_name varchar2(100));
insert into revenue_definition values(1,'Car');
insert into revenue_definition values(2,'Minivan');
insert into revenue_definition values(3,'Bus');
insert into revenue history values(sysdate-2,1,100);
insert into revenue history values(sysdate-2,2,150);
insert into revenue history values(sysdate-2,3,100);
insert into revenue history values(sysdate-1,1,200);
insert into revenue history values(sysdate-1,2,150);
insert into revenue history values(sysdate-1,3,200);
insert into revenue history values(sysdate,1,100);
insert into revenue history values(sysdate,2,150);
insert into revenue history values(sysdate,3,100);
今私がする必要があるのは、このようなレポートを表示することです;
operation_date カー ミニバン バス
sysdate 100 150 100
sysdate-1 200 150 200
sysdate-2 100 150 100
これは、decode または in 11g ピボットを使用して実行できることを知っています。しかし、事前に収益の種類 (車、ミニバンなど) を知る必要があり、定義が作成されるたびにコードを更新する必要があります。できればこれは避けたい。
どんな提案でも大歓迎です、
ありがとう。