Database/MySQL

(MySQL) LIKE: 특정 문자열을 포함한 데이터 검색

고니자니 2023. 2. 17. 22:29
반응형

LIKE 구문을 이용해서 특정 문자열을 포함하는 정보를 검색할 수 있습니다.

SEELCT * FROM 테이블
WHRE 열이름 LIKE 패턴;

패턴(pattern)에는 다음과 같은 메타 문자(meta character)를 사용할 수 있습니다.

%: 임의의 문자열
_: 임의의 한 문자

보통 와일드카드(wildcard characte)로 많이 사용되는 '*' 문자는 사용할 수 없습니다.

 

예를 들어 보겠습니다.

 

다음은 학생(student) 테이블의 내용입니다.

학생(student) 테이블의 내용

이름이 '김'씨 성인 학생을 조회하는 SQL 구문입니다.

mysql> select * from student where name LIKE  '김%';

SQL: 이름이 '김'씨 성인 학생 검색

이름이 '원'으로 끝나는 학생을 조회하는 SQL 구문입니다.

mysql> select * from student where name LIKE  '%원';

SQL: 이름이 '원'로 끝나는 학생 검색

이름에 '나'를 포함하는 학생을 조회하는 SQL 구문입니다.

mysql> select * from student where name LIKE  '%나%';

SQL: 이름에 '나'를 포함하는 학생 검색

 

잠깐, 광고 한 개 보고 가실게요....

 

반응형

 

 

'_' 문자를 이용해서 다음과 같은 검색도 가능합니다.

이름이 2자인 학생을 검색합니다.

mysql> select * from student where name LIKE  '__';

SQL: 이름이 2자인 학생 검색

성이 '김'씨이고, 이름 전체가 2자인 학생을 검색하는 예입니다.

mysql> select * from student where name LIKE  '김_';

 

문자열에 '%' 문자를 포함하는 SQL 구문은 다음과 같습니다.

LIKE '%\%%'

 

문자열에 작은 따옴표(')를 포함하는 SQL 구문의 다음과 같습니다.

예를 들어, 문자열에서 I'm을 포함하는 문자열의 검색은 다음과 같습니다.

LIKE '%I''m%'   ---- 작은 따옴표 2개를 연속해서 기술합니다.

 

 

 

반응형