Java 超类型上的hibernate查询返回子类型的结果,如何仅返回超类型的结果?

Java 超类型上的hibernate查询返回子类型的结果,如何仅返回超类型的结果?,java,hibernate,polymorphism,criteria,Java,Hibernate,Polymorphism,Criteria,是否可以仅对超类型进行hibernate查询 我的超级类型被称为对话,它有自己的hbm。 对话是想法和问题的超级类型,它们也有自己的hbm 如果我对我的超类型对话进行计数查询,它还将返回Idea&Question的计数。 我怎样才能避免呢 例如: 我有 3个想法 4个问题 1对话 如果我对想法进行查询,它将返回3 如果我对问题进行查询计数,它将返回4 如果我对对话进行查询计数,它将返回3+4+1=8 我希望查询只返回我1个对话如何从对话c中选择countc.id,其中c.id不在想法I中选择I.

是否可以仅对超类型进行hibernate查询

我的超级类型被称为对话,它有自己的hbm。 对话是想法和问题的超级类型,它们也有自己的hbm

如果我对我的超类型对话进行计数查询,它还将返回Idea&Question的计数。 我怎样才能避免呢

例如:

我有

3个想法 4个问题 1对话 如果我对想法进行查询,它将返回3 如果我对问题进行查询计数,它将返回4 如果我对对话进行查询计数,它将返回3+4+1=8


我希望查询只返回我1个对话

如何从对话c中选择countc.id,其中c.id不在想法I中选择I.id或c.id不在问题q中选择q.id

如果查询超类型,您将得到“超类型”的结果。如果您只需要特定子类型的结果,查询该子类型否,它也会返回子类型的结果如果我对SuperType进行查询当然会,也许您可以对您的问题进行更多解释我想避免使用纯sql,只使用条件查询我没有使用条件查询,因此我无法说明查询,但是我认为上面的查询可以转换为条件查询。并且查询在HQL中