LIKE 패턴 매칭

LIKE는 문자열을 그대로 비교하지 않고, 와일드카드 기호를 먼저 해석합니다.

%는 길이를 열고, _는 한 글자 자리를 비웁니다. 기호 자체를 찾을 때는 ESCAPE로 해석을 멈춥니다.

%

0개 이상 임의 문자

예시 name LIKE '삼성%'
의미

삼성으로 시작하면 뒤 길이는 자유입니다.

결과

삼성TV, 삼성노트북, 삼성 모두 매칭될 수 있습니다.

_

정확히 1개의 임의 문자

예시 name LIKE '_철_'
의미

전체 세 글자이고 가운데 글자가 철이어야 합니다.

결과

김철수는 가능하지만 철수, 김철수님은 길이가 맞지 않습니다.

ESCAPE

와일드카드를 문자로 읽기

예시 name LIKE '%50!%%' ESCAPE '!'
의미

!%는 패턴이 아니라 실제 퍼센트 문자입니다.

결과

50% 할인처럼 퍼센트 기호가 들어간 문자열을 찾습니다.

시작 검색

prefix% 형태는 비교적 예측 가능하고 인덱스 활용 여지가 있습니다.

포함 검색

%keyword%는 편하지만 큰 테이블에서는 검색 비용이 커질 수 있습니다.

문자 그대로

%, _ 자체를 찾을 때는 ESCAPE를 명시해 오해를 막습니다.