如何使用 JPQL 从多个 ManyToOne 相关实体中获取特定字段值?

How to get specific fields values from multiple ManyToOne-related entities with JPQL?

我是 JPA 的新手,所以不要因为可能很愚蠢的问题而责备我,但 google 没有给我答案。

我使用 PostreSQL 数据库。假设我有实体一,它与实体二(列表二)有 ManyToOne 关系,而实体二又与实体三(列表三)有 ManyToOne 关系。

所有三个实体都有自己的 ID 字段。

因此 JPQL 我正在尝试执行以下查询: "SELECT o.two.ID, o.two.three.ID FROM One o WHERE o.ID = 1 GROUP BY(o.two.ID, o.two.three.ID)"

但我收到的只有 Internal Server ErrorSQLGrammarExceptionSQLState: 42803, Character code: 8.

在pg_log中有记录必须在GROUP BY中指定o.two.ID,但它已经存在了。

我终于找到了解决办法!

我只需要在我的实体中添加 OneToMany 反向关系,因此实体 Two 必须与实体 One 和实体 [=14] OneToMany 相关=] 必须 OneToMany 与实体 Two.

相关

谢谢大家!