객체지향 쿼리 언어6 - 조건식과 JPQL함수
- 소개
- 기본 문법과 쿼리API
- 프로젝션(SELECT)
- 페이징
- 조인
- 서브 쿼리
- JPQL 타입 표현과 기타식
- 조건식 (CASE 등등)
- JPQL 함수
01. 조건식 - CASE 식
- 기본 CASE 식
SELECT
CASE WHEN m.age <= 10 THEN '학생요금'
WHEN m.age >= 60 THEN '경로요금'
ELSE '읿반요금'
END
FROM Member m
- 단순 CASE 식
SELECT
CASE t.name
WHEN '팀A' THEN '인센티브110%'
WHEN '팀B' THEN '인센티브120%'
ELSE '인센티브105%'
END
FROM Team t
- COALESCE
하나씩 조회해서 null 이 아니면 반환
SELECT
COALESCE(m.username, "이름 없는 회원")
FROM Member m
- NULLIF
두 값이 같으면 null 반환, 다르면 첫번째 값 반환
예시 - 관리자의 이름을 숨기고 싶을 때 사용할 수 있음
SELECT
NULLIF(m.username, "관리자") -- m.username이 "관리자" 이면 null 로 나오게 된다.
FROM Member m
02. JPQL 기본 함수
- CONCAT
- SUBSTRING
- TRIM
- LOWER, UPPER
- LENGTH
- LOCATE
- ABS, SQRT, MOD
- SIZE, INDEX(JPA 용도)
댓글남기기