看板 Statistics 關於我們 聯絡資訊
昨天根據tew版友的指導 我順利的取出想要的變數 但最後在merge時失敗了 我的指令如下 proc sql; create table A1 as select var2, var1 from A; quit; proc sql; create table B1 as select var3, var1 from B; quit; proc sort data=A; by var1; proc sort data=B; by var1; data A1B1; merge A B; by var1; run; proc sort data=C; by var1; data A1B1C; merge A1B1 C; by var1; run; 我想做的事情是把A和B中的var1 var2 var3抽出來 再依據var1這個變數 merge A1和 B1 兩個表格 成為A1B1 到這個地方都ok 但最後要merge A1B1 和 C 時 就失敗了 我的想法是 C 沒有經過proc sql的程序 所以無法和經過proc sql程序的表格merge 於是我又做了一個步驟 proc sql; create table C1 as select * from C; quit; 但是 這個動作完全失敗 一個變數都沒有出來 想請問 如果我只想要把A表格的var1 var2 和 B表格的var1 var3抽出來 再以var1為對照標準把表格A和B的var2與var3丢進去C表格裡面 那我怎麼做最快 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.78.46
bugle:為啥不用 SQL 幫你 MERGE ??? 03/28 11:15
bugle:另,可否用table1,table2,...重新改code? 你貼得眼花撩亂= = 03/28 11:16
※ 編輯: hanjing 來自: 140.115.78.46 (03/28 12:05)
hanjing:sorry我重新編輯過了,希望比較容易看些 03/28 12:06
hanjing:麻煩bugle大教一下用sql merge的指令,感謝感謝 03/28 12:07
west1996:proc sql; 03/28 21:17
west1996:create c as 03/28 21:17
west1996:select coalesce(a.var1,b.var1) label='var1',a.var2, 03/28 21:18
west1996:from a full join b 03/28 21:18
west1996:on a.var1=b.var1; 03/28 21:18
west1996:quit; 03/28 21:19
sneak: 為啥不用 SQL 幫你 https://noxiv.com 11/09 14:52
sneak: //noxiv.com http://yofuk.com 01/02 14:52