PROC SQL与MERGE
例:
中国队
![](https://upload-images.jianshu.io/upload_images/25406646-b318a8b18f33f8ac.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
美国队
![](https://upload-images.jianshu.io/upload_images/25406646-86d7c9e028eb0b61.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
使用merge时:如果两个数据集变量名相同,则以后面的数据集为准覆盖前面的数据集的变量。而如果不同,则像下面一样,依旧以后表为准,依次连接前表。
1 DATA PINGPANG; 2 MERGE CHINA USA; 3 RUN;
#output
level | china | usa |
1 | c01 |
u00 |
2 | c02 | u01 |
2 | c03 | u02 |
3 | c04 | u03 |
4 | u04 |
使用SQL时:在SQL中应具体匹配到关键字,然后会从笛卡儿积中选取两个表中同时都存在的观测作为内连接。
1 PROC SQL; 2 CREATE TABLE PINGPANG01 AS SELECT * FROM CHINA INNER JOIN USA ON CHINA.LEVEL =USA.LEVEL; 3 QUIT;
#output
level | china | usa |
1 | c02 | u00 |
2 | c03 | u02 |
2 | c03 | u01 |
3 | c04 | u03 |