프로젝션: select 대상 지정

 

 

프로젝션 대상이 하나

@Test
    public void simpleProjection() {
        List<String> result = queryFactory
                .select(member.username)
                .from(member)
                .fetch();

        for (String s : result) {
            System.out.println("s = " + s);
        }
    }

프로젝션 대상이 하나면 타입을 명확하게 지정할 수 있음
프로젝션 대상이 둘 이상이면 튜플이나 DTO로 조회

 

 

 

 

튜플 조회
프로젝션 대상이 둘 이상일 때 사용

com.querydsl.core.Tuple

@Test
    public void tupleProjection() {
        List<Tuple> result = queryFactory
                .select(member.username, member.age)
                .from(member)
                .fetch();

        for (Tuple tuple : result) {
            String username = tuple.get(member.username);
            Integer age = tuple.get(member.age);
            System.out.println("username = " + username);
            System.out.println("age = " + age);
        }
    }

 

 

 

 

 

출처 : 김영한 JPA 스프링 데이터 강의

'Querydsl' 카테고리의 다른 글

프로젝션과 결과 반환 - @QueryProjection  (0) 2022.07.25
프로젝션과 결과 반환 - DTO 조회  (0) 2022.07.25
상수, 문자 더하기  (0) 2022.07.25
Case 문  (0) 2022.07.25
서브 쿼리  (0) 2022.07.25
복사했습니다!