我有两个实体:
-
User
: id:long, name:String
-
Player
: id:long, owner:User,点:int
现在我想在一个 JPQL 查询中选择一个用户及其关联的玩家。在 SQL 中我会这样做:
SELECT u.*, p.* FROM User u
LEFT JOIN Player p ON (p.owner_id = u.id)
WHERE u.name = ...
我的第一反应是在 JPQL 中这样做
SELECT u, p FROM User u LEFT JOIN Player p ON (p.owner = u) WHERE u.name = ...
但我不认为ON
JPQL 支持子句。不过我确实需要它,因为User
没有参考Player
(除此之外还有很多事情Player
可以附加到User
)。
我该如何解决这个问题?
你们的关系来自Player
to User
,因此您可以反转连接以跟随它:
SELECT u, p FROM Player p RIGHT JOIN p.owner u WHERE ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)