✅ case식 ✅ COALESCE ✅ NULLIF
‘HELLO’, ‘She’’s’
TRUE, FALSE
10L(Long), 10D(Double), 10F(Float)
🔥 패키지명을 포함해야 함
jpabook.MemberType.Admin
TYPE(m) = Member (상속 관계에서 사용)
select
case when m.age <= 10 then '학생요금'
when m.age >= 60 then '경로요금'
else '일반요금'
end
from Member m
select
case t.name
when '팀A' then '인센티브110%'
when '팀B' then '인센티브120%'
else '인센티브105%'
end
from Team t
하나씩 조회해서 null이 아니면 반환
사용자 이름이 없으면 이름 없는 회원을 반환
select coalesce(m.username,'이름 없는 회원') from Member m
두 값이 같으면 null 반환, 다르면 첫번째 값 반환
사용자 이름이 ‘관리자’면 null을 반환하고 나머지는 본인의 이름을 반환
select NULLIF(m.username, '관리자') from Member m
db 종속적인 함수들 또한 제공됨 (db가 바뀌면 파라미터 등이 달라 사용 불가능한 경우 주의)
사용하는 DB 방언을 상속받고, 사용자 정의 함수를 등록하여 사용할 수 있는데 필요할 때 다시 알아보자
select function('사용자 정의 함수', i.name) from Item i