DB

MYSQL Ver.06 (LIKE, %, _ )

순댓국 2023. 12. 4. 00:37
728x90
반응형
SMALL

사칙연산자를 통해서 숫자를 검색했는데

문자를 검색하고 싶다면?

 

LIKE 사용

SELECT * FROM vehile

WHERE brand LIKE 'ford'



WHERE 뒤에 columnname LIKE value 이런식으로 작성

 

LIKE 뒤에 'ford' 만 넣으면 정확히 ford 라는 문자를 가진 것만 찾는다. 

 

%기호사용

SELECT * FROM vehicle
WHERE brand LIKE '%ford%'

%는 아무글자라는 뜻이며 wildcard 라고도 불린다.
위에처럼 %ford% 는 '아무글자 + ford + 아무글자' 

이렇게 조합에 일치하는 행 전부를 찾아준다.

ford mustang or ford mach 같은 행 전부를 찾아준다.

 

 

나 어릴적에는 '깍두기'라고 불렀지. 

 

 

SELECT * FROM vehicle
WHERE brand LIKE 'ford%'

'ford + 아무글자' 를 찾아 줘.

ford mustang
ford mach
같은 앞에 ford가 오고 뒤에 오는 아무 문자를 찾아주겠지.

 

SELECT * FROM vehicle
WHERE brand LIKE '%ford'

이건 반대겠지? 
'아무글자 + ford'

 

문자검색 syntax 이므로 문자가 있는 column만 검색이 가능하다. 

 

_기호사용

 

SELECT * FROM vehicle
WHERE brand LIKE '__fold'

'아무글자 2개 + ford'가 포함된 행만 찾아준다.

 

 

% 기호등은 성능저하의 원인이 될 수 있으므로 

OR, 등호, 부등호 쓰는게 더 나을 수 있다.

728x90
반응형
LIST