-
[MyBatis] ${} 와 #{} 의 차이 작은따옴표 제거Web Programming 2023. 10. 30. 22:41728x90반응형
어떠한 데이터의 컬럼이 데이터는 숫자형이고 컬럼 타입이 문자형이면서
그 컬럼을 가지고 숫자형 함수인 sum 이나 avg 함수를 써서 표현해줘야 할 경우
마이바티스에서 foreach로 보통 #{} 형식을 많이 쓰는데
서브쿼리 부분에 컬럼 AS #{뉴 컬럼} 된 것을
format(avg( # {뉴 컬럼}),2) 이런식으로 표시해야 된다면 AVG 함수에서 오류가 발생할 것이다.
그 이유는 #{} 는 자동 문자로 인식하기 때문에 '컬럼' 에 작은 따옴표가 붙게 되기 때문이다.
이클립스 콘솔에서 보면 바로 확인가능 할 것이다.
작은 따옴표가 안붙어야 AVG 함수를 이용할 수 있기 때문에 작은 따옴표가 없고 foreach로 해줄려면
format(avg( $ {뉴 컬럼}),2) 이렇게 해줘야 한다.
그럼 문제 없음.
728x90반응형'Web Programming' 카테고리의 다른 글
[카산드라 에러] Cannot execute this query as it might involve data filtering and thus may have unpredictable performance (1) 2023.11.01 freemarker foreach 예시 (1) 2023.10.30 [MariaDB] 쿼리를 가로로 만들기 vertical to horizontal (0) 2023.10.30 한국시간 UTC로 변경하는 방법 (0) 2023.10.29 [Bootstarp] 부트스트랩이란? (1) 2023.10.29