MySQL LIKE 검색시 와일드카드 (%, _ ) 이스케이프 처리 하여 검색하는 방법
SELECT 구문에서 LIKE 검색시 %와 _ 를 가지고 조건 범위 검색을 수행합니다. 이 둘을 적절히 활용하면 다양한 검색이 가능하지만 %_ 자체를 검색하고 싶은 경우 어떻게 할까요?

방법은 역슬래시(또는 원화표시 \)를 앞에 붙여주면 됩니다.

다음은 이름에 % (퍼센트)가 포함되어 있는 데이터를 검색하는 방법입니다.
SELECT * FROM employees_ WHERE first_name LIKE '%\%%';
cs

퍼센트가 총 세 개 있는데, 첫번째와 세번째는 우리가 아는 LIKE문에서 와일드카드로서의 퍼센트이며, 가운데의 \%의 경우 검색하려는 문자 %를 의미합니다.

마찬가지로 _ (언더스코어) 가 포함된 데이터를 검색하는 경우에도 똑같이 역슬래시 \ 를 통해 검색이 가능합니다.
SELECT * FROM employees WHERE first_name LIKE '%\_%';
cs

블로그 이미지

도로락

IT, 프로그래밍, 컴퓨터 활용 정보 등을 위한 블로그

댓글을 달아 주세요! 질문 환영합니다!