我想知道合并多个表的最佳方法是什么。我在所有表中都有唯一的标识符。我应该在排序表后一步加入所有表,还是应该逐步逐步合并表。 这有关系吗?
答案 0 :(得分:2)
您可以一步完成多次合并。但是,这不是最安全的方式。如果您的数据可能存在不完善之处,最好一步一步地执行此操作。 Imho,当时最好合并一个步骤,但这是你的电话。
proc sort data=data1; by id; run;
proc sort data=data2; by id; run;
proc sort data=data3; by id; run;
data combo;
merge data1(in=a) data2(in=b) data3(in=c);
by id;
if a and b and c; /*Inner join. Change as needed. */
run;
这相当于:
data partial;
merge data1(in=a) data2(in=b);
by id;
if a and b;
run;
data combo;
merge partial(in=a) data3(in=b);
by id;
if a and b;
run,
答案 1 :(得分:0)
没有特别的理由一步一步地做到这一点,除非你有一个与你关注解决的冲突的变量名称,或者你的组合逻辑很复杂而且你#&# 39;再担心会弄乱一些东西。无论如何,没有任何功能原因。 SAS中的join
实际上比SQL中的org.apache.axis2.AxisFault: Invalid white space character (0x4) in text to output (in xml 1.1, could output as a character entity)
更简单,特别是因为语法更简单,所以它与SQL案例有些不同。