我有一个简单的本机查询:
SELECT DISTINCT
*
FROM
permission p
WHERE
p.USER_ID = ?
OR p.ROLE_ID IN (SELECT
r.id
FROM
user u
JOIN
role r ON u.ID = r.USER_ID
WHERE
r.ROLE_TYPE_ID = ?)
我想将此查询转换为命名查询(JPQL),如下所示:
SELECT p
FROM Permission p
WHERE p.user =:user OR p.role IN p.user.roles
但问题是这不起作用:我不能IN
像这样使用。任何建议或想法如何解决这个问题?
非常感谢!
此致,
JB