에러 모음집

SQL WHERE LIKE 연산자

JUN0126 2022. 11. 14. 18:39

LIKE 를 이용하다가.. 언더바(_)가 예약어 인지 모른채 검색을 진행했을 떄 내 예상대로 검색이 되지 않고 추가적으로 더 데이터가 나오는 현상이 있어 해당 사항을 정리해본다..

 

우선 WHERE LIKE 에서 사용되는 예약어를 알아보자

 

1. A%

 - A 로 시작되는 모든 문자열을 검색한다.

2. %A%

 - A 가 포함되어 있는 모든 문자열을 검색한다.

3. %A

 - A로 끝나는 모든 문자열을 검색한다.

4. _A

 - 두번째 글자가 A이 인 두글자의 문자열을 검색한다. EX) EA, FA...

 - 언더바 개수만큼 검색 조건을 걸 수 있다. EX ) (언더바 2개) __A -> EEA, FEA 

 5. _A_

 - 문자열 A 앞 뒤로 문자가 한 문자 씩 있는 것을 검색한다 EX) BAZ, GAI

 6. A_K

 - 문자 A와 K 사이에 한 글자가 잇는 것을 검색한다 EX) ASK, AMK

 

 

이렇게 이루어진 예약문자들을 실제로 검색 해야 할 때가 있다. 그럴때는 \ (백슬래쉬) 를 추가해줌으로서 해당 예약 문자들을 검색 문자로 사용할 수 있다.

 

 

select * from 테이블명 where 컬럼명 like 'A\%'  -> "A%" 이라는 문자를 찾고 싶을 경우 

select * from 테이블명 where 컬럼명 like '\_A\_' -> "_A_" 이라는 문자를 찾고 싶을 경우

'에러 모음집' 카테고리의 다른 글

406 ERROR : Not Acceptable  (1) 2023.07.19
IntellJ Java version 맞추기  (0) 2021.12.29