将具有休眠条件 API 的父项中的子项 table 添加到 select

Add count of child table to select from parent with hibernate criteria API

如何使用 Hibernate 条件 API 执行此 SQL 查询?

SELECT c.*, count(r.id) FROM COURSE c left join REFERRAL r on c.id = r.course_id group by c.id

类似这样的东西似乎足够接近:

Criteria criteria = currentSession().createCriteria(Referral.class, "r");
criteria.createAlias("r.course", "course");

ProjectionList projections = Projections.projectionList();
projections.add(Projections.groupProperty("course.id"));
projections.add(Projections.count("r.id"));

return list(criteria
        .setProjection(projections));