Java JPA:按各自字段查询实体的两个子体

Java JPA:按各自字段查询实体的两个子体,java,inheritance,jpa,Java,Inheritance,Jpa,我有一个抽象的实体,有两个具体的后代。继承类型为单表。我需要从db中找到一些后代。作为搜索条件,我使用与子类相关的字段,即父类没有该属性。因此,我需要父实体的实例列表 下面是一个伪代码: abstract class ParentEntity { } class ChildA extends ParentEntity { int a; } class ChildB extends ParentEntity { String b; } 查询应该类似于: se

我有一个抽象的实体,有两个具体的后代。继承类型为单表。我需要从db中找到一些后代。作为搜索条件,我使用与子类相关的字段,即父类没有该属性。因此,我需要父实体的实例列表

下面是一个伪代码:

abstract class ParentEntity {
} 

class ChildA extends ParentEntity {    
int a;    
}

class ChildB extends ParentEntity {    
String b;    
}
查询应该类似于:

select ParentEntity from ChildA childA where childA.a=5 UNION select ParentEntity from ChildB childB where childB.b="hello" 
现在我的问题是:我可以在一个查询中获得我需要的实体,或者在带有一些子查询的列表中,或者通过使用UNION(据我所知,它在JPA中不被广泛支持)来获得实体吗? 或 我有两个运行两个独立的查询,统一它们的结果并手动排序

JPA,Hibernate,PostgreSQL