LIKE
LIKE
연산자는 텍스트 데이터에서 특정 패턴을 검색할 때 사용됩니다. LIKE
연산자는 =
연산자로는 처리할 수 없는 부분 일치 검색을 수행할 수 있습니다. 주로 와일드카드(%
, _
)와 함께 사용됩니다.
1. 와일드카드란?
와일드카드는 특정 패턴을 검색할 때 사용하는 문자입니다. SQL에서는 와일드카드로 %
와 _
를 사용할 수 있습니다.
%
: 0개 이상의 문자를 대체합니다._
: 정확히 하나의 문자를 대체합니다.
2. %
와일드카드 사용 예시
다음 쿼리는 '스티커'로 끝나는 모든 상품명을 검색하는 예시입니다.
SELECT 상품명
FROM 상품
WHERE 상품명 LIKE '%스티커';
SELECT 상품명
FROM 상품
WHERE 상품명 LIKE '%스티커';
이 쿼리는 '스티커'로 끝나는 모든 상품명을 조회합니다. %
는 '스티커' 앞에 어떤 문자나 문자열이 와도 상관없다는 의미입니다.
SELECT 상품명
FROM 상품
WHERE 상품명 LIKE '%노트북%';
SELECT 상품명
FROM 상품
WHERE 상품명 LIKE '%노트북%';
3. _
와일드카드 사용 예시
다음 쿼리는 세 번째 문자가 '준'인 모든 고객을 조회하는 예시입니다. _
를 2개에서 1개로 줄이면 이름이 2글자인 고객을 조회할 수 있습니다.
SELECT 이름
FROM 고객
WHERE 이름 LIKE '__준';
SELECT 이름
FROM 고객
WHERE 이름 LIKE '__준';
두 개의 밑줄(__
)은 첫 두 문자가 무엇이든 상관없음을 나타냅니다.
4. NOT LIKE 사용
LIKE
연산자와 반대로, 특정 패턴을 제외한 데이터를 검색하고 싶다면 NOT LIKE
를 사용할 수 있습니다. 다음 쿼리는 '스피커'로 끝나지 않는 상품명을 검색하는 예시입니다.
SELECT 상품명
FROM 상품
WHERE 상품명 NOT LIKE '%스피커';
SELECT 상품명
FROM 상품
WHERE 상품명 NOT LIKE '%스피커';
이 쿼리는 '스피커'로 끝나지 않는 모든 상품명을 조회합니다.
LIKE
연산자를 사용하면 복잡한 패턴 매칭을 간단하게 수행할 수 있습니다.