我有一个具有多个多对一映射的作业表。申请人表格,其中包含特定职位和地址表的申请人,该表格包含有关此职位发布位置的多个位置。我正在寻找一个查询,它可以获取作业列表(每个作业没有多个条目)。当我做job.getApplicants时,它应该给我这份工作和工作的所有申请人名单。地址应该给我这份工作的所有地址。重要的是,所有上述数据都应该在 One Single Eager 获取中获得。
我现在遇到的问题是,如果我有10个申请人,我的jobList中的单个工作将获得10个条目。我使用的代码有点像这样。
select j from Job j left outer join fetch j.applicants apps where j.job_id = :job_id
提前致谢
答案 0 :(得分:0)
实际上,答案很简单..我只需添加明显的
select distinct j from Job
我之前无法使用distinct,因为job中的一个列是xml类型的..我仍然在寻找如何在创建实体类本身时将xml类型列转换为String / varchar的答案,同时使用注释。