카테고리 없음

mybatis like 문

원코드 2023. 4. 20. 22:28

검색 결과가 이상해서 한참 프론트를 수정했는데 알고보니 쿼리 문제였다...

 

MY-SQL일 경우

SELECT []
FROM []
WHERE name LIKE  CONCAT('%',#{name},'%')

ORACLE일 경우

SELECT []
FROM []
WHERE name LIKE %'||#{name}||'%'

MS-SQL일 경우

SELECT []
FROM []
WHERE name LIKE '%' + #{name} + '%'

지금 쓰고있는 디비가 mysql인데 oracle 버전으로 써서 잘못된 결과가 나옴...오류가 뜨는것도 아니라 찾는데 한참걸렸다

 

참고 블로그: 

https://dongram.tistory.com/12

 

[MyBatis] 동적 쿼리 LIKE 문 삽질 주의

[MyBatis] 동적 쿼리 생성시 삽질 주의 MyBatis로 동적 쿼리 생성시 주의 해야 할 점. MyBatis 문법은 RDBMS 별로 쿼리가 조금 씩 달라지며, 자신이 사용하는 디비에 맞지 않게 사용하면 하루종일 삽질하

dongram.tistory.com