Closed dasd412 closed 2 years ago
group by 와 함께 쓴 코드
/**
* @param writerId 작성자 id
* @return (평균 혈당, 식사 시간) 형태의 튜플들
*/
@Override
public List<Tuple> findAverageBloodSugarGroupByEatTime(Long writerId) {
return jpaQueryFactory
.select(QDiet.diet.bloodSugar.avg(),QDiet.diet.eatTime)
.from(QDiet.diet)
.innerJoin(QDiet.diet.diary.writer, QWriter.writer)
.on(QDiet.diet.diary.writer.writerId.eq(writerId))
.groupBy(QDiet.diet.eatTime)
.fetch();
}
테스트 코드에서 튜플 꺼내 쓰기
for (Tuple tuple : tupleList) {
EatTime eatTime = tuple.get(QDiet.diet.eatTime);
Double average = tuple.get(QDiet.diet.bloodSugar.avg());
logger.info(eatTime + " " + average);
}
참고 자료 http://querydsl.com/static/querydsl/3.7.2/reference/ko-KR/html/ch03s02.html