반응형
cf) 사용 데이터셋 : company
LIBNAME ss "C:\DATA22" ; /*라이브러리 지정*/
1. BASE PROC 용법
1-1. 오름차순 정렬
✔️ formula
PROC SORT DATA=데이터셋 명 OUT=새 데이터셋 명 ;
BY 정렬할 때 기준 변수 ;
RUN ;
✔️ example
📌 code
PROC SORT DATA=ss.company OUT=scomp ; BY type ; RUN ; PROC PRINT ; RUN ; /*결과 출력하기*/
📌 result
1-2. 내림차순 정렬
✔️ formula
PROC SORT DATA=데이터셋 명 OUT=새 데이터셋 명 ;
BY DESCENDING 정렬할 때 기준 변수 ;
RUN ;
✔️ example
📌 code
PROC SORT DATA=ss.company OUT=scomp ; BY DESCENDING type age; RUN ; PROC PRINT ; RUN ; /*결과 출력하기*/
type 기준 내림차순 정렬 후 age 기준 내림차순 정렬
📌 result
2. SQL 용법
2-1. 오름차순 정렬
✔️ formula
PROC SQL ; /*SQL 엔진 구동*/
SELECT *
FROM 데이터셋 명
ORDER BY 정렬할 기준 변수 ;
QUIT; /*SQL 엔진 종료*/
✔️ example
📌 code
PROC SQL ; /*SQL 엔진 구동*/ SELECT * FROM ss.company ORDER BY type ; QUIT; /*SQL 엔진 종료*/
📌 result
2-2. 내림차순 정렬
✔️ formula
PROC SQL ; /*SQL 엔진 구동*/
SELECT *
FROM 데이터셋 명
ORDER BY 정렬할 기준 변수 DESC ;
QUIT; /*SQL 엔진 종료*/
✔️ example
📌 code
PROC SQL ; /*SQL 엔진 구동*/ SELECT * FROM ss.company ORDER BY type DESC, age; QUIT; /*SQL 엔진 종료*/
type 기준 내림차순 정렬 후 age 기준 오름차순 정렬
📌 result
실습 문제
#️⃣ 1. 연령대가 낮은 관측치부터 순서대로 출력하시오.
📌 code
- BASE PROC
PROC SORT DATA=ss.company OUT=acompany ; BY age ; RUN ; PROC PRINT ; RUN ; /*결과 출력하기*/
- SQL
PROC SQL ; SELECT * FROM ss.company ORDER BY age ; QUIT;
📌 result
- BASE PROC- SQL
#️⃣ 2. 성별 * 연령별 순서대로 출력하시오. (단, 연령대는 내림차순으로 정렬하시오.)
📌 code
- BASE PROC
PROC SORT DATA=ss.company OUT=dcompany ; BY type DESCENDING age ; RUN ; PROC PRINT ; RUN ; /*결과 출력하기*/
- SQL
PROC SQL ; SELECT * FROM ss.company ORDER BY type, age DESC ; QUIT;
📌 result
- BASE PROC- SQL
#️⃣ 3. 이름(name)에 K 또는 k가 포함된 레코드만 출력하는 SQL 프로그램을 작성하시오.
아래의 데이터셋 생성 코드를 실행하시오.
DATA customer ; INPUT id $ 1-3 name $ 5-10 type $ 13-17 weight 18-19 height 21-23; CARDS; 101 KimCS M1 74 170 102 LeeYH F1 68 166 103 AhnSJ F2 55 155 104 ParkMH M12 72 167 105 MZR 66 169 106 KangJY F3 52 . ; RUN;
📌 code
/*sol 1*/ PROC PRINT DATA=customer; WHERE FIND(name,"k","i",1) > 0 ; RUN; /*sol 2*/ PROC PRINT DATA=customer; WHERE INDEX(LOWCASE(name),"k") > 0 ; RUN; /*sol 3*/ PROC PRINT DATA=customer; WHERE LOWCASE(name) LIKE '%k%' ; RUN;
📌 result
반응형
'Statistics & Data Science > SAS' 카테고리의 다른 글
[SAS / SQL] 데이터 출력 조건 지정 : 중복 제거(NODUPKEY) (0) | 2022.11.17 |
---|