LIKE 구문은 where절에서 많이 사용하게 되고, %와 언더바(_)를 이용해서 부분적으로 일치하는 값을 조회할 수 있어요.
1) % 은 문자열의 길이가 제한이 없는 것
2) _ 는 문자열의 길이를 지정해주는 것
위 member 테이블 예제를 이용해서 %과 _ 를 활용하는 방법을 알아보도록 해요.
1) % 활용법
%이 하나일 경우
-- member 테이블의 mem_name 열에서 '우'로 시작하는 모든 회원을 검색
SELECT * FROM member WHERE mem_name LIKE '우%';
-- 결과값: 우주소녀가 포함된 행이 조회
-- member 테이블의 mem_name 열에서 '친구'로 끝나는 모든 회원을 검색
SELECT * FROM member WHERE mem_name LIKE '%친구';
-- 결과값: 여자친구가 포함된 행이 조회
%이 문자 기준으로 앞 뒤로 2개 사용될 때
-- member 테이블의 mem_name열에 앞,뒤 상관없이 '핑크'가 포함된 모든 회원 조회
SELECT * FROM member WHERE mem_name LIKE '%핑크%';
-- 결과값: 블랙핑크, 에이핑크의 행이 조회
위 예시처럼 %을 사용하게 되면 문자열의 길이에 상관없이 일치하는 값을 조회할 수 있어요.
%을 기준으로 양 옆에 문자가 있을 때
-- 시작과 끝이 A로 되는 것을 출력하고 싶을 때
SELECT '칼럼명' FROM '테이블명' WHERE '칼럼명' LIKE 'A%A';
-- 결괏값: ACCA, ACDDGA
2) 언더바(_)
언더바(_)의 개수는 문자열의 개수
-- member 테이블의 mem_name 열에서 앞의 두 글자는 상관없이 뒤가 '무'인 회원을 조회
SELECT * FROM member WHERE mem_name LIKE '__무'; (언더바 두 개 입력)
-- 결과값: 마마무의 행이 조회
-- member 테이블의 mem_name 열에서 뒤의 한 글자는 상관없이 앞이 '잇'인 회원을 조회
SELECT * FROM member WHERE mem_name LIKE '잇_'; (언더바 하나 입력)
-- 결과값: 잇지의 행이 조회
위 예시처럼 언더바(_)는 문자열의 길이를 직접 지정해줄 수 있기 때문에 %보다는 세부적으로 활용할 수 있어요.