기본 검색 쿼리
@Test
public void search() {
Member findMember = queryFactory
.selectFrom(member)
//where(member.username.eq("member1"),member.age.eq(10)).fetch()로 처리 가능
.where(member.username.eq("member1")
.and(member.age.eq(10)))
.fetchOne();
assertThat(findMember.getUsername()).isEqualTo("member1");
}
select,from을 selectFrom으로 합칠 수 있다
검색 조건에서 .and() , .or()를 메서드 체인으로 연결할 수 있다
.and()는 파라미터로 처리할 수 있다
Querydsl은 JPQL이 제공하는 모든 검색 조건을 제공한다
member.username.eq("member1") // username = 'member1'
member.username.ne("member1") //username != 'member1'
member.username.eq("member1").not() // username != 'member1'
member.username.isNotNull() //이름이 is not null
member.age.in(10, 20) // age in (10,20)
member.age.notIn(10, 20) // age not in (10, 20)
member.age.between(10,30) //between 10, 30
member.age.goe(30) // age >= 30
member.age.gt(30) // age > 30
member.age.loe(30) // age <= 30
member.age.lt(30) // age < 30
member.username.like("member%") //like 검색
member.username.contains("member") // like ‘%member%’ 검색
member.username.startsWith("member") //like ‘member%’ 검색
...
'QueryDSL' 카테고리의 다른 글
[Querydsl] 서브쿼리 (from절 서브쿼리 한계) (0) | 2022.03.23 |
---|---|
[Querydsl] 조인(기본 조인, 세타 조인, on절(leftJoin,필터링), 페치조인) (0) | 2022.03.22 |
[Querydsl] 집합(groupBy, having) (0) | 2022.03.22 |
[Querydsl] 결과 조회, 정렬, 페이징 (0) | 2022.03.22 |
[Querydsl] 시작(Querydsl 이란, 기본 Q-Type 활용, build.gradle 설정) (0) | 2022.03.22 |