반응형
LIKE
LIKE 연산자는 특정 문자가 포함되어 있는 데이터를 검색 할때 사용한다.
1. 특정 문자로 시작하는 데이터 검색
SELECT [필드명] FROM [테이블명] WHERE [필드명] LIKE '특정 문자열%';
2. 특정 문자로 끝나는 데이터 검색
SELECT [필드명] FROM [테이블명] WHERE [필드명] LIKE '%특정 문자열';
3. 특정 문자를 포함하는 데이터 검색
SELECT [필드명] FROM [테이블명] WHERE [필드명] LIKE '%특정 문자열%';
이때, 복수개의 특정 문자를 포함하는 데이터를 검색하기 위해서 OR연산자를 사용해야한다.
SELECT [필드명] FROM [테이블명] WHERE [필드명] LIKE '%특정 문자열%' OR [필드명] LIKE '%특정 문자열2%';
뭔가 번거롭다. 특정 문자가 많아질수록 OR, 필드명, LIKE가 중복되기 때문이다.
REGEXP
이를 해결하고자, REGEXP 연산자를 사용하도록 한다.
REGEXP 연산자는 LIKE보다 복잡한 패턴을 검색 할때 사용한다.
복수개의 특정 문자를 포함하는 데이터 검색 (특정 문자열을 '|' 를 기준으로 나눈다)
SELECT [필드명] FROM [테이블명] WHERE [필드명] REGEXP '특정 문자열|특정 문자열2';
반응형
'DB' 카테고리의 다른 글
[DB] 데이터 존재 확인 (COUNT vs EXISTS) (0) | 2022.06.01 |
---|---|
[MySQL] 윈터코딩 sql (0) | 2019.10.26 |
[MySQL] Invalid use of group function (0) | 2019.10.25 |
[MySQL] LIMIT (특정 n개의 레코드 출력) (0) | 2019.10.25 |
[MySQL] 컬럼 Id 자동증가 속성 변경 (0) | 2019.10.03 |