꾸준하고 즐겁게

MySQL에서 포함되는 단어 검색하는 like키워드 사용하기 본문

Database/MySQL

MySQL에서 포함되는 단어 검색하는 like키워드 사용하기

wj9183 2021. 5. 6. 21:40
728x90

이번에도 이전 글의 그 테이블이 맞다.

 

 

어떨 때 사용할까?

 

100개가 조금 넘는 데이터가 들어있는 테이블이 있다.

 

 

여기서 username에 hi라는 문자열을 포함하는 username은 어떤 게 있는지 확인하고 싶다고 가정하자.

그럴 때 사용할 수 있는 게 like다.

 

 

 

 

 

 

사용 예

 

 

 

select * 
from users
where username like 'hi';

사용하는 방법은 이렇다.

하지만 hi라는 문자열을 포함하는 username이 없다.

이렇게 사용할 경우, username 컬럼에 정말 찾는 문자열 그대로 hi가 있어야한다.

hi1도 안되고, 1hi도 안된다.

hi여야만 한다.

 

찾고자하는 문자열을 끝에서 끝까지 완벽하게 알고 있는 게 아니라면,

이럴 땐 와일드 카드를 사용하면 된다.

 

 

 

select * 
from users
where username like '%hi%';

이렇게 사용하면, 앞 뒤에 어떤 다른 문자열이 있든 hi라는 문자열을 포함하는 username은 다 불러온 것이다.

 

 

 

 

적당히 여러 개 나오는 문자열로 검색해보고 싶었다.

 

 

 

 

문자열 가장 뒤에 Al을 포함하는 username은 없다.

 

 

 

 

하지만 가장 앞에 포함하는 경우는 3건 있다.

 

 

 

 

눈치가 빠르시거나 잘 아시는 분들(이 이 글을 왜 보고 계세요...)이라면 이미 알고 있겠지만,

SQL문은 대소문자를 구분하지 않기에 이렇게 검색해도 같은 결과가 나온다.

728x90