[SQL 7-2] Creating Views with the SQL Procedure
안녕하세요^^
오늘은 PROC SQL을 이용하여 view를 만들고, view를 이용하여 쿼리를 작성하고, 다른 프로시저를 사용하는 방법에 대해 알아보도록 하겠습니다.
PROC SQL View란 무엇일까요?
- PROC SQL View는 저장된 쿼리입니다.
- 실제의 데이터는 담고 있지 않습니다.
- 하나 또는 그 이상의 테이블이나, PROC SQL Views, DATA step views, SAS/ACCESS views로부터 파생될 수 있습니다.
- SAS 프로그램에서 data table처럼 같은 방법으로 reference될 수 있습니다.
- 같은 SAS 라이브러리에 저장된 데이터 테이블의 이름과 같은 이름은 가질 수 없습니다.
이러한 PROC SQL View를 만들기 위해서는, CREATE VIEW 문장을 사용합니다.
예를들어, 올려드린 ‘data.text’파일을 돌려 sasuser 라이브러리 내에 payrollmaster데이터와 staffmaster자료를 생성합니다.
그리고, 위에서 말씀드린대로 CREATE VIEW 문장을 사용하여 PROC SQL View를 만들어보도록 하겠습니다.
PROC SQL에서, FROM절의 default libref는 view가 담겨있는 라이브러리의 libref입니다.
즉, view와 데이터 소스가 같은 위치에 존재한다면, FROM절에는 one-level name만 지정하면 됩니다.
앞서 PROC SQL View가 무엇인지 설명하면서, 같은 SAS 라이브러리에 저장된 데이터 테이블의 이름과 같은 이름은 가질 수 없다고 하였습니다. 이 경우를 예를들어 살펴보도록 하겠습니다.
즉, PROC SQL View는 같은 SAS 라이브러리에 저장된 데이터 테이블의 이름과 같은 이름은 가질 수 없습니다.
또한, View를 이용하여 간단한 report를 작성할 수 있습니다.
또한, View를 이용하여 간단한 기초통계량도 계산할 수 있습니다.
새롭게 만든 PROC SQL View를 하드 드라이브의 폴더 내에 복사하였다고 할 때, view는 더 이상 어떤 작업도 수행하지 못하게 되었습니다.
새롭게 만든 PROC SQL View는 FROM절의 orion.tom_zhou라는 이름의 view인데, 아래와 같은 코드를 실행하면 SAS log창에 error가 발생하였다는 결과를 얻었습니다.
이 때, 사용자는 ‘c:\temp’ 위치로 생성한 view를 옮기고 orion 라이브러리를 다시 정의해야 합니다.
이것은 VIEW 코드 내의 FROM절에서 one-level naming에는 맞지 않습니다.
이러한 경우 USING절을 사용하여 테이블의 위치를 다시 지정하게 됩니다.
이상으로 proc sql문장의 view에 대해 간략히 알아보았습니다.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.