【发布时间】:2016-02-23 09:40:09
【问题描述】:
我看到了一些与我的问题相关的问题,但从来没有完全相同的结构,而且由于我对 SAS/SQL 很陌生,我找不到解决问题的正确方法。
我尝试了几天加入多个表(大约三十个)
基本上,我的问题归结为:
假设我有 3 张桌子:
TAB,有 2 个变量 V1 和 V2 t1,有 2 个变量 V2 和 V3 t2,具有相同的 2 个变量 V2 和 V3
我想根据 V2 的值将 TAB 与 t1 或 t2 加入以获得 Full_TABLE
TAB
V1 V2
A 1
B 1
C 2
D 2
t1
V2 V3
1 x
1 y
1 z
t2
V2 V3
2 h
2 i
2 j
预期结果:
Full_TABLE
V1 V2 V3
A 1 x
A 1 y
A 1 z
B 1 x
B 1 y
B 1 z
C 2 h
C 2 i
C 2 j
D 2 h
D 2 i
D 2 j
逻辑上是基于V2的值的条件连接:
如果 V2=1,则将 TAB 与 t1 合并
如果 V2=2 则将 TAB 与 t2 合并
不知道能不能自动做,
粗略地说,V1 有 30.000 个不同的值,V2 有 27 个(所以 27 个表 t1-t27),V3 每个 V2 值有 10 个值,因此我预计 Full_TABLE 为 30.000*10=300.000 行
所以我可以管理基于 V2 和/或 V3 而非 V1 的半自动化解决方案
高度赞赏 SAS 或 SQL(或 proc sql...)方面的任何线索!
S
【问题讨论】: