JPQL은 SQL을 추상화해서 특정 데이터베이스 SQL에 의존하지 않는다.
엔티티와 속성은 대소문자 구분
- 엔티티 : 대문자 (Member)
- 속성 : 소문자 (age)
JPQL 키워드는 대소문자 구분 X(SELECT, FROM , where)
엔티티 이름 사용, 테이블 이름이 아님
별칭은 필수(as 생략 가능)
ANSI 규약의 쿼리문은 모두 지원함
- COUNT, SUM, AVG ...
- GROUP BY, HAVING, ORDER BY ...
TypeQuery : 반환 타입이 명확할 때 사용
- Query 반환 타입이 명확하지 않을 때 사용