Мне нужна помощь с proc SQL. У меня есть таблица, как этотСлияние двух таблиц при некоторых условиях
ID1 ID2 DR1 DR2
1 03/04/2009 158 0
2 12/06/2009 214 0
2 05/02/2009 59 0
1 03/04/2009 0 158
2 03/04/2009 225 0
и я хотел бы создать новую таблицу с каждой строкой, где DR2 не нулевые, и для каждого из них линии, поиска, если есть еще одна линия с тем же ID1 и ID2 и с DR1, равным значению DR2.
Для этого примера, это дало бы мне эту таблицу:
ID1 ID2 DR1 DR2
1 03/04/2009 0 158
1 03/04/2009 158 0
Я пытался сделать это в два этапа, но без успеха:
data tmpTable;
set Table;
where DR2>0;
run;
proc sql;
create table wanted as
select * from tmpTable
inner join Table on Table.ID1 = tmpTable.ID1
and Table.ID2 = tmpTable.ID2
and Table.DR1 = tmpTable.DR2;
quit;