SAS - Proc Sql - 使用新变量创建和合并

时间:2015-10-15 07:57:00

标签: sql merge sas

我想基于表中的某些条件创建一个新变量,并使用单个数据或proc sql步骤中新创建的变量将其合并到另一个表。

例如)

表1

var new_var

x 3x

y 4y

z 5z

表2

new_var additional_var

3x a

3x a

4y z

并在 单步

中使用new_var合并两个表

由于

1 个答案:

答案 0 :(得分:0)

您可以使用带有内嵌视图的连接来完成此操作。内联视图可以节省编码时间并减少I / O操作,这是减速的最大原因。在非SSD硬盘驱动器上尤其如此。

 proc sql noprint;
      create table want as
           select var, t1.new_var, additional_var
           from table1 as t1
           LEFT JOIN
                (select new_var, 
                        CASE
                            when(<conditions>) then 'a'
                            else 'z'
                        END as additional_var
                 from table2) as t2
           ON t1.new_var = t2.new_var
 quit;