작성
·
603
0
안녕하세요 영한님.
밑에 비슷한 질문이 있었는데 해결이 되지않아 질문드립니다.
//모든이름과 평균나이 출력
QMember memberSub = new QMember("memberSub");
List<Tuple> result = queryFactory
.select(member.username,
JPAExpressions
.select(memberSub.age.avg())
.from(memberSub)
)
.from(member)
.fetch();
for (Tuple tuple : result) {
System.out.println(tuple.get(member.username));
System.out.println(tuple.get(1, Double.class));
}
강의에서 코드인데요
여기서 평균나이값을 tuple에서 뽑고싶어서
tuple.get(memberSub.age.avg()) 로 뽑아봤는데 값이
null이 나옵니다. 그래서 현재는 Index와 클래스로 뽑긴했는데 member.username처럼 바로뽑는법이 있을까요?
항상 감사합니다.
답변 3
0
0
심모님 혹시 저 문제 해결하셨나요? ExpressionUtils.as() 이걸로 서브쿼리 별칭을 주는 것까지는 됬는데
저거를 tuple에서 직접 뽑아내는건 get() 외에 다른 방법은 못찾겠더라구요.
뭔가 좀 더 배우면 DTO에 담아서 뽑아낼 수도 있을 것 같긴하거든요.
혹시 방법 찾으셨으면 공유 부탁드려도 될까요?
0
안녕하세요. 심모님
다음을 읽어보시면 ExpressionUtils.as()를 사용하는 부분이 있는데요. 이 부분을 참고해주세요.
https://jojoldu.tistory.com/379
감사합니다.