我正在尝试使用月份和产品ID构建数据集。每个唯一的产品ID都存储在表1中,所有相关月份都存储在表2中。
Table1
1234
1254
Table2
Jan2010
Feb2010
Mar2010
Apr2010
最终数据看起来像这样:
ID Date
1234 Jan2010
1234 Feb2010
1234 Mar2010
1234 Apr2010
1254 Jan2010
1254 Feb2010
1254 Mar2010
1254 Apr2010
我如何合并这两个表来获得结果?
答案 0 :(得分:1)
SELECT Table1.Id, Table2.Date
FROM Table1
CROSS JOIN Table2
ORDER BY Table1.Id ASC, Table2.Date ASC
答案 1 :(得分:0)
之前的proc sql
解决方案有效。但是,如果您正在使用庞大的数据集,那么该环境并不总是可行的。我使用了更多'sas'-y解决方案:
data Table1 ;
input num; cards;
1234
1254
; run;
data Table2;
input dates $ ; cards;
Jan2010
Feb2010
Mar2010
Apr2010
; run;
data all_comb;
set table1;
do i=1 to n;
set table2 point=i nobs=n;
output;
end;
run;
但严重的是,如果是一个选项,请使用Proc sql。