エンティティ間に 1 対多の関係があります。この JPQL クエリを実行する場合:
SELECT 親 FROM 親 親 JOIN 親.子 子 WHERE ...
親に2人の子供がいる場合は重複レコードを取得し、親に1人の子供がいる場合は1つだけ、子供がいない場合はレコードを取得しません(子供がいない場合はなし)。SQL データベースには Parent の重複がないことに注意してください。
エンティティは次のように宣言されます。
@Entity(...)
public class Parent {
@Id
Long parentId;
@OneToMany(mappedBy = "parentID")
List<Child> children;
}
@Entity(...)
public class Child {a
Long parentId;
}
簡潔にするために多くのコードを省略しましたが、これにより、私が何をしようとしているのかについての強いアイデアが得られるはずです。クエリから返された子と一緒に親のリストが必要なため、関係は親の側で定義されていることに注意してください。