SAS между наблюдениями из другой таблицы поиска - PullRequest
0 голосов
/ 24 марта 2020
create table Mstr_codes_frm_thru as
select DISTINCT 
code,value_from,value_thru
from master_code;

значения from и thru хранятся в таблице diff (Exp_Master)

. Мне бы хотелось, чтобы я мог создать таблицу, которая бы возвращала все наблюдения между - через значения вместе с кодом, связанным с ними. (см. ниже)

enter image description here

1 Ответ

0 голосов
/ 26 марта 2020

Возможно, вы захотите объединение, которое использует from и thru из master_code как часть критерия BETWEEN.

Пример:

data master_code;
input code min max; datalines;
1 10 12
1 20 22
2 88 91
3 11 14
4 20 21
;
data exp_master;
do code = 1 to 10;
  do value = 1 to 100;
    output;
  end;
end;
run;

proc sql;
  create table want as
  select distinct exp_master.code, exp_master.value, master_code.min, master_code.max
  from master_code 
  join exp_master
  on master_code.code = exp_master.code
  where
  exp_master.value between master_code.min and master_code.max
  ;
quit;

enter image description here

...