【发布时间】:2011-06-26 22:37:41
【问题描述】:
我有两个实体:
-
User: id:long, name:String -
Player: id:long, owner:User, points: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 = ...
但我认为 JPQL 不支持 ON 子句。但是我确实需要它,因为User 没有引用Player(Player 以外的许多东西都可以附加到User)。
我该如何解决这个问题?
【问题讨论】: