본문 바로가기
[JAVA]/JPA

JPQL 조건식 - CASE 식

by 팡펑퐁 2023. 5. 3.
728x90

기본 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, '관리자') FROM Member m
-- 사용자 이름이 '관리자'면 null을 반환하고 나머지는 본인의 이름을 반환

 

 

 

참고

김영한 - 자바 ORM 표준 JPA 프로그래밍

728x90

'[JAVA] > JPA' 카테고리의 다른 글

JPQL - 경로 표현식  (0) 2023.05.04
JPQL 함수  (0) 2023.05.03
JPQL - 타입 표현과 기타식  (0) 2023.05.01
JPQL - 서브 쿼리  (0) 2023.05.01
JPQL - JOIN  (0) 2023.05.01