2016-12-19 9 views
0

現在、2つの非常に基本的なクラスがあり、もう1つはネストされています。HQL - 複合オブジェクトのリストを返す

クラスの仕事:

public Class Job { 
    private String name; 
    private int salary; 
    ... // Basic Constructors + Getters/Setters 
} 

クラス会社:

public Class Company { 
    private String name; 
    private Collection<Job> jobs; 
    ... // Basic Constructors + Getters/Setters 
} 

おそらく、各ジョブの彼らのコレクションが含まれている企業のリストを返しますクエリをしようと、それを推測。

クエリ:

select COMPANY_NAME, JOB_NAME, count(*) FROM COMPANY_REPORT cr, JOB_DECLARATIONS jd 
where cr.COMPANY_NAME = jd.COMPANY_NAME 
group by cr.COMPANY_NAME , cr.JOB_NAME 
order by cr.COMPANY_NAME , cr.JOB_NAME 

はこのようなものが返されます:

Company Name | Job Name | Count 
-------------------------------- 
Soni   Assistant 3 
Soni   Manager  1 
Zoom   Potographer 5 

をしかし、私はそれのためにHQLの構文を理解するように見えることはできません。

Select new com.stuff.Company(cr.COMPANY_NAME, ...how to add collection??) FROM ... 

答えて

0
Select c.name, j.name, count(*) from company c, job j where c.name=:name group by c.name, c.jobs 
Order by c.name,c.jobs 

setparameterList here

を見つけます
関連する問題