如何将条件限制为另一个表中的fk?

时间:2018-10-02 15:09:28

标签: hibernate hibernate-criteria

我有一张桌子car,每辆车都有一个id,可能会出现在{{1}列中的option中(选项包括除霜器,电动车窗等)。 }}。因此,FK_car_idcar有0对多的关系。

我需要带有选项的 汽车

SQL看起来像这样:

option

如何在休眠状态下执行此操作?这是我尝试过的:

SELECT c.* from car c
  LEFT JOIN options o on c.id = o.FK_car_id
  GROUP BY c.id;

但是我收到“无法提取结果集”。


注意:这是我的代码的简化表示,以突出显示主要问题并提供一个最小的示例。

1 个答案:

答案 0 :(得分:1)

使用此:

c.createCriteria(Car.class, "car")
      .createAlias("car.options", "options", JoinType.LEFT_OUTER_JOIN)
      .setProjection(Projections.groupProperty("car.id"));