# MyBatis + MSSQL 사용 시 LIKE 구문


MariaDB (MYSQL 문법) 쓰다가 MSSQL 을 써보았는데, LIKE 구문 작성 형식이 달라 처음에 읭?? 했었다.

다른 쿼리에서 에러난 줄 알고 한참 보고있었는데, 결국 에러 원인은 LIKE 구문이었다 ㅎㅎ. 미세하게 다르다.


1. MyBatis + MariaDB 사용 시 LIKE 구문


 USERNAME  LIKE '%' #{USERNAME } '%'



2. MyBatis + MSSQL 사용 시 LIKE 구문 

   

   - 동적으로 받아오는 입력값 양옆으로 + 를 붙여줘야 한다.


 USERNAME LIKE '%' + #{USERNAME} + '%' 



3. 참고


   - LIKE 구문은 문자열 중 해당 문자를 포함하고 있는 문자열을 검색해주는 기능을 한다. 

   - 주로 검색 조건 값을 처리할 때 사용되는 연산자이다.

   - 아래 표는 LIKE 연산자 사용 시 함께 사용되는 와일드 카드들이다.

   

 %

  여러 문자
 _  단일 문자

 [ ]

  [ ]에 속하는 하나의 패턴과 일치하는 단일 문자 

  

  예) LIKE '[0-9][0-9][0-9]%';

      결과--> 앞의 세글자가 각각 숫자인 것을 찾아냅니다.

 [^]

  [ ] 에 속하는 패턴에 포함되지 않는 단일 문자



__________________________________________________________________________________________________________________________________________________________
** 본 포스팅에 대해 수정해야할 부분이나 추가 의견 등이 있으신 분들은 댓글 달아주세요. 언제나 환영입니다 :) 
** 본 포스팅을 reference 자료로 참고하실 분들은 출처를 꼭 밝혀주시기 바랍니다.

 


'Database > MSSQL' 카테고리의 다른 글

MSSQL - LEN() 문자열 자릿수 반환  (0) 2017.02.26
MSSQL - Numeric() 소수점 자릿수 지정 함수  (0) 2017.02.26

+ Recent posts