2010-07-29 2 views
1

파생 쿼리를 HQL에서 처리 할 수 ​​있는지 알고 싶습니다. 나는 여기 코드의이 비트를 가지고 있고 그것이 바로 키워드의 첫 번째 후 '('기호를 기대하지 않았다고 말에 보관. 여러분의 도움을 많이 감사합니다. 감사합니다.HQL을 사용하여 중첩 선택

"SELECT new " + Distribution.class.getName() + " (adhoc, deployment, design, development, " + 
"enhancement, requirements, testing) FROM (" + 
    "SELECT AVG(week_adhoc) as adhoc, AVG(week_deployment) as deployment, AVG(week_design) as design," + 
    "AVG(week_development) as development, AVG(week_enhancement) as enhancement, AVG(week_requirements) as requirements," + 
    " AVG(week_testing) as testing, AVG(week_training) as training FROM " + 
     "(SELECT dist.id, sum(dist.adhoc) as week_adhoc, sum(dist.deployment) as week_deployment," + 
     "sum(dist.design) as week_design, sum(dist.development) as week_development," + 
     "sum(dist.enhancement) as week_enhancement, sum(dist.requirements) as week_requirements," + 
     "sum(dist.testing) as week_testing, sum(dist.training) as week_training from " + Distribution.class.getName() + " dist " + 
     "where dist.week=1 and dist.month=1 and dist.year=2010 group by dist.id))"; 

답변

0

당신이 고려할 것 HQL 대신 ICriteria를 사용하여 구현합니까? 코드를보다 읽기 쉽고 프로그래밍 가능하게 만듭니다.

관련 문제