728x90
JPAQueryFactory 함수
select() - 조회할 컬럼 지정
- select( entity.variable 명, entity.variable 명)
- selectFrom() - 조회할 컬럼 전체 및 from 테이블 entity 지정
- seledtFrom( entity 인스턴스명)
as() - 컬럼 alias 함수
from() - 조회 대상 테이블
- from(centerStockOutMaster)
join() - join 할 테이블 지정
- join(saleBusinessPlaceMaster)
- leftJoin() - left join 할 테이블 지정
- rightJoin() - 사용하지 말자
- innerJoin() - join()과 동일
- on() - join 시 join 테이블에 매핑되는 컬럼 정의
- on(centerStockOutMaster.storeCode.eq(saleBusinessPlaceMaster.businessPlaceCode))
where() - 조건절
- where(centerStockOutMaster.stockOutStatusCode.`in`(stockOutStatusCodeIn))
- and() - 조회 조건이 여러개일 경우 and() 함수 사용
- .and(centerStockOutMaster.receiveOrderSeperateCode.notIn(receiveOrderSeperateCodeNotIn))
.and(centerStockOutMaster.stockOutTobeYmd.goe(condition1))
- .and(centerStockOutMaster.receiveOrderSeperateCode.notIn(receiveOrderSeperateCodeNotIn))
- eq() - 등호와 같음
- gt() - ">" 와 같음
- lt() - "<" 와 같음
- goe() - ">=" 와 같음
- loe() - "<=" 와 같음
- ne() - "<>" 와 같음
- `in`() - in 절
- in에 들어가는 값은 배열형태로 선언 후 지정 ( var stockOutStatusCodeIn = arrayListOf("2", "3"))
- notIn() - not in 절
- in과 동일하게 배열형태로 선언 후 지정
- between() - between
- centerStockOutMaster.centerCode.between(centerStockOutRequestDto.fromCenterCode, centerStockOutRequestDto.toCenterCode)
orderBy() - 특정 컬럼 기준 정렬시 사용. 여러개인 경우 orderBy()를 여러번 사용하면 된다. (다른 좋은 방법 있는지 확인 필요)
groupBy() -특정 컬럼 기준 grouping시 사용. 여러개인 경우 groupBy()를 여러번 사용하면 된다. (다른 좋은 방법 있는지 확인 필요)
case when
- `when`(), then(), otherwise() 로 구현
subquery
- select, from, where 절에 subquery 사용 가능
- subquery를 사용하려면 JPAExpressions.select() 로 사용
concat() - 문자열 concatenation 함수
max() - max() 함수
min() - min() 함수
count() - count 함수
DB 내장함수 사용
- Expressions.stringTemplate 등을 사용
- fetchJoin() - join 테이블 데이터를 한번에 가져오는 함수. oms 프로젝트에서는 사용하지 않는것이 바람직함
Oracle 내장함수/기능 중 사용불가
- Oracle Hint - addFlag 함수가 이전에 존재하였는데 없어짐. 확인 필요
- DECODE 함수 - case when 으로 변경하여 개발 필요
728x90
'Java' 카테고리의 다른 글
RxJava - Flux 함수 (0) | 2023.08.27 |
---|---|
JAVA - 리플렉션 getField, getDeclaredField 차이 (0) | 2023.05.20 |
Java - 람다 스트림 예제 (0) | 2023.02.10 |
Java - Thread 동시성 문제3 (Synchroized) (0) | 2022.05.04 |
Java - Thread 동시성 문제2 (ThreadLocal ) (0) | 2022.05.04 |
댓글