- 用 PROC SQL; 開始, 用 QUIT; 結束 (不是 RUN;)
- SQL procedure 讀一段執行一段 (辨異: SAS steps 遇到 RUN; 才會執行)
| PROC SQL <選項> ;
陳述式 (statements); QUIT; |
- Select statement
- 很長一段, 可以寫很多小子句
- 因為在同一個 statement 裡, 所以分號只要寫最後一個就好 (初學常誤加分號)
- select / from / where / group by / having / order by 順序是固定的, 不能換
- 一定要有 select 和 from, 其他不一定要
- 最後會跑出一個 output (不會變成資料表)
| PROC SQL; select 變數1, 變數2, ..., 變數n (逗號分隔, 和 SAS DATA step 空格分隔不同) from 來源資料表 (上限 256 個) where 滿足條件再抓進來 group by 分組依據 having 篩選組別依據 order by 排序依據 ; QUIT; |
- 在 select 前寫 validate, 執行後會檢查該 statement 有無語法錯誤, 並寫成 log
- PROC SQL noexec; 會變成檢查所有 statements 的語法錯誤, 並寫成 log, 不真的執行
- PROC SQL 常接的 statements
- select 要抓哪些變數輸出
- create 建表格, 索引
- describe 展示表格屬性來源
- insert 在資料表寫入新資料
- reset 不重跑, 就能回復設定