패턴 매칭
- MySQL은 데이터의 특정 패턴을 검색하기 위한 다음과 같은 패턴 매칭 연산자를 제공합니다.
LIKE
REGEXP
1) LIKE
LIKE
연산자는 특정 패턴을 포함하는 데이터만을 검색하기 위해 사용합니다.
- Ex)
- k로 시작하는 데이터 검색
SELECT *
FROM reservation
WHERE name LIKE 'k%';
- k로 끝나는 데이터 검색
SELECT *
FROM reservation
WHERE name LIKE '%k';
- k를 포함하는 데이터 검색
SELECT *
FROM reservation
WHERE name LIKE '%k%';
2) 와일드 카드
- 와일드 카드란 문자열 내에서 임의의 문자나 문자열을 대체하기 위해 사용되는 기호를 의미합니다.
%
: 0개 이상의 문자를 대체함
_
: 1개의 문자를 대체함
3) REGEXP
LIKE
연산자보다 더욱 복잡한 패턴을 검색하고 싶을 때는 REGEXP
연산자를 사용할 수 있습니다.
REGEXP
연산자는 정규 표현식을 토대로 하는 패턴 매칭 연산을 제공합니다.
- Ex) 'a'로 시작하거나 'b'로 끝나는 레코드 선택
SELECT *
FROM reservation
WHERE name REGEXP '^a|b$';