3
HQL과 OUTER JOIN
을 사용하여 쿼리를 작성하려고하는데 그냥 작동하지 않습니다. 다음 매핑 이제HQL 쿼리에서 외부 조인 사용
<class name="Parent">
<id name="id" type="integer">
<generator class="native" />
</id>
</class>
<class name="Child">
<id name="id" type="integer">
<generator class="native" />
</id>
<many-to-one name="parent"/>
</class>
나는 "모든 부모의 목록과 부모 자녀의 양을 얻을 싶습니다를 생각해 보자. 나는 두 아이들과 전혀 아이들과 함께 한 부모와 부모가 가정하자. I 가능하지 않는 것 그러나 '전혀 문제가되지 않습니다 일반 SQL을 사용하여
+-------------------+
| parent | children |
+--------+----------+
| 1 | 2 |
| 2 | 0 |
+--------+----------+
같은 출력이, 내가
SELECT p.id as parent, count(c.id) as children from parents p LEFT OUTER JOIN children c on c.parent_id = p.id group by p.id;
처럼 뭔가를하고이 출력을 얻을 수 있습니다 기대 거라고 HQL을 사용하여 내가 가지고 있지 않은 OUTER JOIN
을 사용할 때 경로 (부모로부터 자식으로)이 필요합니다 (또한 추가하고 싶지 않음).
HQL을 사용하여 쿼리를 실행하는 방법이나 실제로는 - 나는 그것을 믿을 수 없다 - 최대 절전 모드 기능이 없다?