[英]Add Column to SAS via Proc SQL Statement
我一直無法找到這個確切的問題 - 但它似乎很簡單,以前可能有人問過它。 如果我的搜索能力沒有達到標准,我提前道歉......
無論如何,我正在嘗試創建一個“source_flag”列,附加到我正在創建的幾個表中。 基本上,每年和付款類型都有自己的表格。 我可以單獨查詢和操作每個表,但我會在過程結束時將它們全部連接在一起(完全連接)。 我想創建一個列,每個觀察值都等於數據來自的表。
例如,我想加入六個表:
2019_PD
2020_PD
2019_PB
2020_PB
2019_PN
2020_PN
我要做的就是在每個表的查詢中,創建一個將表名分配給整行的列,以便我知道每一行的來源。
proc sql;
create table 2020_PD as select
...,
...,
...,
"2020_PD" as source_flg,
.
.
.
;
quit;
現在 SAS 正試圖找到一個名為 2020_PD 的字段 - 這顯然不存在。 在 proc 語句中是否有一種簡單的方法可以做到這一點? 我沒有嘗試添加額外的數據步驟,因為我正在使用太多的表來執行此操作以使其可行。
謝謝!!
SQL 使用單引號來分隔字符串。 所以使用:
'2020_PD' as source_flg,
雙引號被解釋為標識符的轉義字符,這就是您收到未知列錯誤的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.