Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- SpringBoot
- springdatajpa
- JPQL
- Exception
- Proxy
- 인프런
- Thymeleaf
- 자바
- pointcut
- Greedy
- 스프링 핵심 기능
- transaction
- 백준
- 스프링 핵심 원리
- db
- 김영한
- jpa
- spring
- AOP
- java
- Android
- 그리디
- QueryDSL
- 알고리즘
- JDBC
- 스프링
- http
- kotlin
- Servlet
- Spring Boot
Archives
- Today
- Total
개발자되기 프로젝트
JPQL 타입 표현 본문
1. JPQL 타입 표현
- 문자 : 'HELLO', 'SHE"s'
- 숫자 : 10L(Long), 10D(Double), 10F(Float)
- Boolean : TRUE, FALSE
- ENUM : jpabook.MemberType.Admin ( 패키지명 표함)
- 엔티티 타입 : TYPE(m) = Member(상속 관계에서 사용)--> DiscriminatorValue로 활용됨
-
em.createQuery("select i from Item i where type(i) = Book", Item.class)
-
2. 예제
String query = "select m.username, 'HELLO', TRUE from Member m ";
List<Object[]> result = em.createQuery(query)
.getResultList();
for (Object[] objects : result) {
System.out.println("objects[0] = " + objects[0]);
System.out.println("objects[1] = " + objects[1]);
System.out.println("objects[2] = " + objects[2]);
}
objects[0] = team
objects[1] = HELLO
objects[2] = true
- enum을 사용하는 경우 아래와 같이 패키지명 포함해야함.
String query = "select m.username, 'HELLO', TRUE from Member m " +
"where m.type = jpql.MemberType.ADMIN ";
- 너무 긴데..? SetParamter로 지정하면 편함.
String query = "select m.username, 'HELLO', TRUE from Member m " +
"where m.type = :userType ";
List<Object[]> result = em.createQuery(query)
.setParameter("userType", MemberType.ADMIN)
.getResultList();
3. JPQL 기타
- SQL과 문법이 같으 ㄴ식
- EXISTS, IN
- AND, OR, NOT
- =, >, >=, <, <=, <>
- BETWEEN, LIKE, IN NULL
'인프런 > [인프런] 자바ORM 표준 JPA 프로그래밍' 카테고리의 다른 글
JPQL 기본 함수 (0) | 2021.08.16 |
---|---|
JPQL 조건식 - CASE (0) | 2021.08.16 |
서브쿼리 (0) | 2021.08.16 |
JPQL JOIN (0) | 2021.08.16 |
JPQL 페이징 API (0) | 2021.08.16 |
Comments