본문 바로가기

Language/MySQL

[MySQL] 패턴 매칭에 의한 검색

특정 문자나 문자열이 포함되어 있는지를 검색하고 싶은 경우 '패턴 매칭' 또는 '부분 검색' 사용

 

[SYNTAX] 열 LIKE 패턴

 

 

LIKE로 패턴 매칭 하기

 

패턴을 정의할 때 '%(퍼센트)', '_(언더스코어)' 두 가지의 메타 문자(특수문자) 사용 가능

% 는 임의의 문자열 의미

_  는 임의의 문자 하나 의미

 

% 는 임의의 문자열과 매치하며, 빈 문자열에도 매치한다.

 

 

 

LIKE로 % 검색하기

 

메타 문자와 동일한 문자를 LIKE로 검색할 경우 이스케이프라는 방법으로 처리 가능

LIKE로 %를 검색하는 경우 % 앞에 \를 붙임

즉, %를 포함하는 데이터를 검색하고 싶을 경우 조건식은 아래와 같다.

WHERE text LIKE '%\%%'

여기서 맨 앞과 마지막의 % 는 메타문자로 임의의 문자열을 의미

중간에 나오는 %는 앞에 \가 있어 이스케이프 된 것을 의미하기 때문에 메타 문자가 아닌 일반 문자를 의미

 

 

 

 

문자열 상수 '의 이스케이프

 

문자열 상수 안에 '를 포함하고 싶은 경우 '를 2개 연속해서 기술하는 것으로 이스케이프 처리 가능

'It's'  → 'It''s'

'       → ''''

 

 


※ 한빛미디어의 'SQL첫걸음' 책을 보고 공부한 내용을 정리하고 있습니다.

'Language > MySQL' 카테고리의 다른 글

[MySQL] 복수의 열을 지정해 정렬하기  (0) 2022.08.08
[MySQL] 정렬 - ORDER BY  (0) 2022.08.05
[MySQL] 조건 조합하기  (0) 2022.07.19
[MySQL] 검색 조건 지정하기  (0) 2022.07.18
[MySQL] 테이블 구조 참조하기  (0) 2022.07.15