Sas: proc sql에서 contains를 사용하는 방법
SAS의 SQL PROC 문에서 CONTAINS 연산자를 사용하여 데이터세트의 변수에 문자열 패턴이 포함된 행만 반환할 수 있습니다.
다음 예 에서는 다양한 농구 선수에 대한 정보가 포함된 SAS의 다음 데이터 세트에서 실제로 CONTAINS 연산자를 사용하는 방법을 보여줍니다 .
/*create dataset*/
data my_data;
input team $points;
datalines ;
Cavs 12
Cavs 14
Warriors 15
Hawks 18
Mavs 31
Mavs 32
Mavs 35
Celtics 36
Celtics 40
;
run ;
/*view dataset*/
proc print data =my_data;

예 1: 변수에 패턴이 포함된 행 선택
PROC SQL 에서 CONTAINS 연산자를 사용하여 팀 이름 어딘가에 “avs” 패턴이 포함된 행만 선택할 수 있습니다.
/*select all rows where team contains 'avs'*/
proc sql ;
select *
from my_data
where team contains 'avs';
quit ;

팀 이름 어딘가에 “avs”가 포함된 행만 반환됩니다.
예 2: 변수에 여러 패턴 중 하나가 포함된 행 선택
PROC SQL 에서 CONTAINS 연산자를 사용하면 팀 이름 어딘가에 “avs” 패턴 이나 “ics” 패턴이 포함된 행만 선택할 수 있습니다.
/*select all rows where team contains 'avs' or 'ics'*/
proc sql ;
select *
from my_data
where team contains 'avs' or team contains 'ics';
quit ;

팀 이름 어딘가에 “avs” 또는 “ics”가 포함된 줄만 반환됩니다.
예 3: 변수에 패턴이 포함되지 않은 행 선택
PROC SQL 에서 CONTAINS 연산자의 반대는 NOT CONTAINS 로, 이는 데이터 세트의 특정 변수에 특정 문자열 패턴이 포함되지 않은 행을 선택합니다.
다음 코드는 NOT CONTAINS 연산자를 사용하여 팀 이름에 “avs”가 포함되지 않은 모든 행을 선택하는 방법을 보여줍니다.
/*select all rows where team does not contain 'avs'*/
proc sql ;
select *
from my_data
where team not contains 'avs';
quit ;

팀 이름 어딘가에 “avs”가 포함되지 않은 줄만 반환됩니다.
추가 리소스
다음 튜토리얼에서는 SAS에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
SAS: PROC SQL에서 UNION을 사용하는 방법
SAS: PROC SQL에서 EXCEPT를 사용하는 방법
SAS: PROC SQL에서 IN 연산자를 사용하는 방법
SAS: PROC SQL에서 WHERE 연산자를 사용하는 방법