...
LIKE 연산자
- 문자열 패턴 일치를 검사
기호 | 설명 |
% | 0개 이상의 문자를 대체함. |
_ | 1개의 문자를 대체함. |
select * from table
where 필드명 like "_영_" # 가운데 글자가 영 인 사람,
where 필드명 like "이%" # 성이 이씨인 사람
where 필드명 like "_종신" # 종신 성씨 아무거나
where 필드명 like "20__" # 2000,2002 같은 네자리 숫자만. 20000 안됨.
REGEXP
- mysql에서도 정규표현식을 사용 가능.
패턴 | 설명 |
. | 줄 바꿈 문자(\n)를 제외한 임의의 한 문자를 의미함. |
* | 해당 문자 패턴이 0번 이상 반복됨. |
+ | 해당 문자 패턴이 1번 이상 반복됨. |
^ | 문자열의 처음을 의미함. |
$ | 문자열의 끝을 의미함. |
| | 선택을 의미함.(OR) |
[...] | 괄호([]) 안에 있는 어떠한 문자를 의미함. |
[^...] | 괄호([]) 안에 있지 않은 어떠한 문자를 의미함. |
{n} | 반복되는 횟수를 지정함. |
{m,n} | 반복되는 횟수의 최솟값과 최댓값을 지정함. |
SELECT * FROM Reservation
WHERE Name REGEXP '^홍|산$'; -- '홍'으로 시작하거나 or '산'으로 끝나는 문자열 검색
SELECT * FROM Reservation
WHERE Name NOT REGEXP '^홍|산$'; -- '홍'으로 시작하거나 or '산'으로 끝나지 않는 문자열 검색
인용한 부분에 있어 만일 누락된 출처가 있다면 반드시 알려주시면 감사하겠습니다
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.