1

我有两个实体 A,B 关系正在进行,可选,从 A 到 B 的一对多(多方),我想选择每个 B 及其相关的 A(或者如果没有 A 相关BI想要null),这可以通过右外连接轻松完成,但是hibernate不支持标准API中的右外连接的问题,所以我想要解决这个问题。

4

1 回答 1

2

根据您的情况,您想使用左连接。喜欢

select b from B b left join A a 
where a.fkey is null

或者如果您在加入之前需要任何标准,请使用

select b from B b left join A a with a.type = 1
where a.fkey is null

这与将服务于与“和”与“开”子句一起服务的类似目的

例子:

select t from Template t left join t.profiles p with p.type = 1
where p.id is null

这将获得所有没有类型 1 的配置文件的模板

于 2012-11-22T14:59:44.083 回答