JPQL의 타입 표현
문자 : ‘~’(작은 따옴표)에 넣어주어야 한다.
숫자 : Integer를 제외한 경우에는, L(Long), D(Double), F(Float)를 숫자 뒤에 입력해주어야 한다.
Boolean : TRUE, FALSE
ENUM : entity.Role.USER ( 패키지를 모두 포함시켜야 한다 )
엔티티 타입 : TYPE(m) = MEMBER( 보통은 상속관계에서 사용된다 )
조건식
기본 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이 아니면 반환
Nullify(~~, ~~) : 두 개를 비교해 같으면 null반환하고, 아니면 첫번째 것을 반환한다.
기본의 경우
이런식으로 출력했을 때
100개를 돌려서 다 보여주긴 힘들지만 이렇게 문자열로 바꾸어 잘 나온다.
coalesce를 이용했을 때, 널 값일 경우 알 수 없음을 띄우려고 했다.
이름을 설정하지 않았기 때문에, 이름 알 수 없음을 출력해야 한다.
이 때에는 이름이 관리자라면 null값으로 나와야 한다.
멤버에 이름을 관리자로 설정해주었다.
null값으로 바뀌어 잘 나온다.
'스프링 공부 > JPA' 카테고리의 다른 글
[JPA] 27. Re.Zero : JPQL 그냥 다 끍어오기.(fetch join) (0) | 2023.01.19 |
---|---|
[JPA] 26. Re.Zero : JPQL 함수/경로 표현 (0) | 2023.01.19 |
[JPA] 25. Re.Zero : JPQL : 서브쿼리 (0) | 2023.01.19 |
[JPA] 24. Re.Zero : JPQL : join하실래요? 합석? (0) | 2023.01.19 |
[JPA] 23. Re.Zero : JPQL : 프로젝션 (0) | 2023.01.19 |