반응형
오늘은 JPA에서 간단하게 우리가 원하는 데이터를 조회 할 수 있는 방법중에 하나인 Query Methods 에 대해서 알아보도록 하겠습니다.
Keyword | Usage | JPQL |
Where and | findByColumne1AndColumn2(col1, col2); | select ... where column1 = col1 and column2 = col2 |
Where or | findByColumn1OrColumn2(col1, col2); | select ... where column1 = col1 or column2 = col2 |
Distinct | findDistinctByColumn1(col1); | select distinct ... where column1 = col1 |
Is, Equals | findByColumn1Is(col1); findByColumn1Equals(col1); |
select ... where column1 = col1 |
LessThan | findByNumColumnLessThan(col1); | select ... where numColumn < col1 |
LessThanEqual | findByNumColumnLessThanEqual(col1); | select ... where numColumn <= col1 |
GreaterThan | findByNumColumnGreaterThan(col1); | select ... where numColumn > col1 |
GreaterThanEqual | findByNumCOlumnGreaterThanEqual(col1); | select ... where numColumn >= col1 |
Between | fidnByDateColumnBetween(col1, col2); | select ... where dateColumn between col1 and col2 |
After | findByDateColumnAftter(col1); | select ... where dateColumn > col1 |
Before | findByDateColumnBefore(col1); | select ... where dateColumn < col1 |
IsNull, Null | findByColumn(Is)Null(); | select ... where column is null |
IsNotNull, NotNull | findByColumn(Is)NotNull(); | select ... where column is not null |
Like | findByColumnLike(col1); | select ... where column like col1 |
NotLike | findByColumnNotLike(col1); | select ... where column not like col1 |
StartingWith | findByColumnStartingWith(col1); | select ... where column col1|'%' |
EndingWith | findByColumnEndingWith(col1); | select ... where column '%'|col1 |
Containing | findByColumnContaining(col1); | select ... where column '%'|col1|'%' |
Not | findByColumnNot(col1); | select ... where column <> col1 |
In | findByColumnIn(collectionCol); | select ... where column in (collectionCol) |
NotIn | findByColumnNotIn(collectionCol); | select ... where column not in (collectionCol) |
Order by | findByColumnOrderByDesc(col1); findByColumnOrderByAsc(col1); |
select ... order by col1 desc select ... order by col1 asc |
True | findByColumnTrue(); | select ... where column = true |
False | findByColumnFalse(); | select ... where column = false |
IgnoreCase | findByColumnIgnoreCase(col1); | select ... UPPER(column) = UPPER(col1) |
복잡할 수록 메소드명이 길어지긴 하기만 간편하게 원하는 데이터를 조회할 수 있는 방법이니 기본적인 사용법은 익혀놓고 가도록 합시다.
참고 : https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods.query-creation
반응형
'Programing > JPA' 카테고리의 다른 글
JPA Date or Timestamp 저장 시 유용한 어노테이션 (0) | 2023.05.16 |
---|---|
JPA 에서 entity를 삭제하는 여러가지 방법과 차이 (0) | 2023.05.04 |
JPA @Query 사용 시 주의점 ERROR: relation "table_name" does not exist, ConverterNotFoundException (0) | 2023.04.08 |
JPA Sequence 자동증가 설정 @SequenceGenerator (0) | 2023.03.07 |
JPA MapStruct Date format 설정 timestamp, date, string (0) | 2023.02.07 |
댓글