본문 바로가기
DB

오라클 : 조건식에 LIKE를 사용해 보자

by 스노위13 2022. 7. 29.

LIKE는 WHERE과 함께 사용하여 특정 텍스트를 포함한 값을 찾을 때 유용하게 사용할 수 있다.
예를 들면 직원 데이터에서 '김'씨인 사람만 찾을 때나 고객 데이터에서 '부산'이 들어간 주소를 찾을 때 사용할 수 있다.

먼저 예시를 위해 테이블을 만들고 값을 넣어 주자. 

CREATE TABLE exName(
nm VARCHAR2(100));

INSERT INTO ex3_5 VALUES('홍길') ;
INSERT INTO ex3_5 VALUES('홍길동') ;
INSERT INTO ex3_5 VALUES('홍길상') ;
INSERT INTO ex3_5 VALUES('길상') ;
INSERT INTO ex3_5 VALUES('길상홍길') ;

SELECT * FROM exName;

테이블의 데이터는 아래와 같다. 

그러면 이제 LIKE를 활용하여 특정 텍스트를 포함한 값을 찾아 보자.

SELECT * 
FROM exName 
WHERE 여기에 LIKE 를 넣어서 값을 찾는다

아래의 코드들을 WHERE절에 한줄한줄 넣으면서 어떻게 검색되는지 확인하면 더 빨리 이해될듯~

1. LIKE만 사용

WHERE nm = '홍';    -- > '홍'이란 텍스트만 찾기


2. LIKE와 %로 검색

WHERE nm LIKE '홍%';       -->  홍으로 시작하는 텍스트 모두 찾기
WHERE nm LIKE '%길';       -->  길로 끝나는 텍스트 모두 찾기
WHERE nm LIKE '%홍%';      -->  홍이 포함된 텍스트 모두 찾기



3. LIKE와 _ 로 검색 : 텍스트의 길이가 맞아야 할 때는 % 대신 _ 를 사용한다

WHERE nm LIKE '홍_';    -->  '홍'으로 시작하는 2글자인 텍스트 모두 찾기
WHERE nm LIKE '길___';  -->  '길'로 시작하는 4글자인 텍스트 모두 찾기
WHERE nm LIKE '_길_';   -->  '길'이 중간에 들어가는 3글자인 텍스트 모두 찾기

 

그때그때 필요한 검색 조건에 맞춰 선택해서 쓰면 된다~

댓글