-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
select절 서브쿼리 tuple에서 읽는방법
22.03.16 19:10 작성 조회수 377
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처럼 바로뽑는법이 있을까요?
항상 감사합니다.
답변을 작성해보세요.
0
휴고 강
2024.04.18
저도 계속 이것저것해보다가 이렇게하니까 값 뽑아낼수가있네요 혹시 저처럼 이런 방법 찾아서 이 글까지 오시는분들은 참고하셔도 될꺼같습니다! (맞는방법인지는 모르겠어요 ㅠㅜ)
0
Mr.Lee
2022.09.29
심모님 혹시 저 문제 해결하셨나요? ExpressionUtils.as() 이걸로 서브쿼리 별칭을 주는 것까지는 됬는데
저거를 tuple에서 직접 뽑아내는건 get() 외에 다른 방법은 못찾겠더라구요.
뭔가 좀 더 배우면 DTO에 담아서 뽑아낼 수도 있을 것 같긴하거든요.
혹시 방법 찾으셨으면 공유 부탁드려도 될까요?
0
김영한
지식공유자2022.03.20
안녕하세요. 심모님
다음을 읽어보시면 ExpressionUtils.as()를 사용하는 부분이 있는데요. 이 부분을 참고해주세요.
https://jojoldu.tistory.com/379
감사합니다.
답변 3