BookmarkSubscribeRSS Feed

[SQL 8-2] SQL 옵션 (Using SQL Procedure Options)

Started ‎06-17-2020 by
Modified ‎06-17-2020 by
Views 820

[SQL 8-2] Using SQL Procedure Options

 

안녕하세요^^

​오늘은 SQL 포로시저 options을 사용하여 절차를 제어해보도록 하겠습니다.

PROC SQL 옵션은 아래의 특징을 제공하며 SQL 절차를 섬세하게 제어할 수 있도록 합니다.

​​- 코드를 실행하지 않고 syntax checking을 할 수 있습니다.

- ​가능한 값 모두에 대해 SQL 문장을 확장시킬 수 있습니다.

- ​Rows의 수를 제어할 수 있습니다.

- ​쿼리 조정을 통해 system utilization statistics를 제공할 수 있습니다.

 

 

SE22017012001203170.jpg

 

PROC SQL의 옵션은 위와 같은 코드로 간단히 작성할 수 있습니다.

첨부파일로 올려드리는 두 데이터(PAYROLLMASTER, STAFFMASTER)에서 jobcode를 ‘FA’로 갖고, EMPID가 같은 사람들에 대한 정보 중 10개만 결과로 보는 코드를 작성해보겠습니다.

SE22017012001211870.jpgSE22017012001212570.jpg

 

위의 코드 중 outobs=10 이라는 옵션을 통해결과로 나오는 테이블에 10개의 row가 작성된 것을 보실 수 있습니다.

 

 

즉, 위와 같이 rows의 수를 제어할 수 있는 옵션을 추가적으로 더 설명해보도록 하겠습니다.

​위에서 설명했듯이, OUTBOS=n은 쿼리의 결과에 rows의 수를 n개로 제어합니다.

INOBS=n은 각각의 source table의 rows의 수를 n개로 제어합니다.

​또한 NOEXEC는 쿼리를 실행하지 않고 모든 SQL 문장의 syntax를 체크합니다.

​또한, 결과를 제어하는 옵션은 아래와 같은 종류들이 있습니다.

 

option 효과
PRINT | NOPRINT Report로서 보여지는 SELECT 문장의 결과를 보일 것인지 보이지 않을 것인지 제어합니다
NONUMBER | NUMBER Row number가 쿼리 결과의 첫 번째 column으로 보일 것인지 보이지 않을 것인지 제어합니다
NOSTIMER | STIMER PROC SQL이 SAS log창에 resource utilization statistics를 작성할 것인지 작성하지 않을 것인 것 제어합니다
NODOUBLE | DOUBLE Report가 double-spaced일 것인지 아닌지 제어합니다. 이 옵션은 SAS LISTING 결과에서만 나타납니다
NOFLOW | FLOW | FLOW=n | FLOW=n <m> 문자형 column의 너비를 제어합니다이 옵션은 SAS LISTING 결과에서만 나타납니다

 

 

 

SE22017012001231370.jpg SE22017012001231970.jpg

 

위의 코드 중 inobs=10 이라는 옵션을 통해결과로 나오는 테이블은 payrollmaster 데이터의 조건에 맞는 상위 10개의 row가 작성된 것을 보실 수 있습니다.

 

 

 

​INOBS= 옵션은 FROM절에 테이블이 여러 개라면 각각의 테이블에 모두 적용됩니다.

RESET 문장에서 INOBS=MAX를 사용하여 프로시저를 다시 불러들이는 일 없이 모든 관측치를 읽을 수 있습니다.

이상으로 proc sql문장의 옵션에 대해 알아보았습니다.

 

Contributors
Version history
Last update:
‎06-17-2020 12:52 AM
Updated by:

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

Article Labels
Article Tags