0

こんにちは、私は2つのテーブルを持っています.1つは人で、もう1つは彼の収入です

個人のテーブル構造

insert into  person (person_id,start_date) values (1,02-jan);
insert into  person (person_id,start_date) values (1,03-jan);
insert into  person (person_id,start_date) values (1,04-jan);
insert into  person (person_id,start_date) values (1,14-jan);

収益というテーブルがあり、構造は次のとおりです

insert into  earnings (person_id,start_date) values (1,01-jan);
insert into  earnings (person_id,start_date) values (1,04-jan);
insert into  earnings (person_id,start_date) values (1,10-jan);
insert into  earnings (person_id,start_date) values (1,13-jan);

ここでは、person id で 2 つのテーブルを結合する person と収益からのすべての値を持つテーブルを開発するロジックを導出する必要があり、すべての収益データも必要です。

ここで、個人の開始日は、レコードが有効になる有効日であり、その個人の収入についても同じです。

エンドテーブルはこのようにする必要があります。申し訳ありませんが、質問にテーブル構造を入れることができないため、挿入ステートメントを提供しています。

希望のテーブル出力

insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,02-jan,01-jan);

insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,03-jan,01-jan);


insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,04-jan,04-jan);


insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,04-jan,10-jan);


insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,04-jan,13-jan);


insert into pers_earnings(person_id,person_start_date,earnings_start_date) values (1,14-jan,13-jan);

この望ましい出力テーブルを取得するための提案を教えてください。

4

1 に答える 1

1
create or replace Table pers_earnings
as
Select 
person.person_id, 
person.start_date person_start_date, 
earnings.start_date earnings_start_date
from  person inner join earnings on person.person_id =  earnings.earnings_start_id
where
person_start_date <= earnings_start_date;
于 2013-02-14T22:07:56.030 に答える