LIKE

LIKE서칭으로는 특정 구(phrase)가 포함된 값을 찾을 수 있다.

위 예시에서는 MovieTitle열에서 "LOVE"가 포함된 값을 서치하고있다.

LIKE 서칭에서는 어떻게 비교할것인지 와일드카드로 명시해야한다.

문자열에 LOVE가 어디에든 포함되어있는 값을 찾으려면 %LOVE%,

LOVE로 시작하는 값을 찾으려면 LOVE%, LOVE로 끝나는 값을 찾으려면 %LOVE를 사용하면 된다.

와일드카드

%외에도 와일드카드는 _ [] [^]등이 존재한다.

언더바(_)는 해당 자리에 단 하나의 문자만을 허용한다. 언더바는 자릿수만큼 연속해서 사용할수 있다.(__RY, ___Y 등)

 []는 괄호 안의 문자중 하나로 시작하고, 이후 문자열로 끝나는 행을 선택한다.

[^CM]ARY의 경우에는 C나M으로 시작하지 않고 ARY로 끝나는 행을 선택하게 된다.

 

와일드카드로 인해 생기는 약간의 문제가 있다. 데이터에 와일드카드로 지정되어있는 특수기호가 들어있는 경우엔 어떻게 될까?

위처럼 [로 시작하는 값을 불러오려 했지만 아무것도 불러오지 못했다.

'['를 포함한 값을 불러오려면 [를 []와일드카드로 한번 더 감싸주어야한다.

하지만 닫는괄호(])에는 해당사항이 없다. LastName의 'problem]'은 따로 []로 감싸주지 않아도 정상적으로 값을 호출한다.

따라서 불러오려는 값에 여는 대괄호가 들어가는 경우에 이런 문제가 발생하는것을 알 수 있다.

 

'DB > 관계형 DB' 카테고리의 다른 글

검색형 CASE  (0) 2021.04.15
CASE  (0) 2021.04.15
선택 기준 (WHERE, TOP)  (0) 2021.04.08
데이터 정렬(ORDER BY)  (0) 2021.04.08
숫자함수(ROUND,RAND,PI,POWER)/변환함수(CAST)  (0) 2021.04.08

+ Recent posts