SQL查询到JPQL one
我正在尝试转换此sql查询:SQL查询到JPQL one,sql,jpa,jpql,Sql,Jpa,Jpql,我正在尝试转换此sql查询: SELECT * FROM event WHERE idEvent IN (SELECT idEventfk FROM userevent WHERE absence='1'); 转换为JPQL版本: SELECT e FROM Event e where e.idEvent IN (SELECT ue.idEventfk FROM userevent ue WHERE ue.absence='1' 但是它返回的结果是null。是否知道错误?如果
SELECT *
FROM event
WHERE idEvent IN (SELECT idEventfk FROM userevent WHERE absence='1');
转换为JPQL版本:
SELECT e FROM Event e where e.idEvent
IN (SELECT ue.idEventfk FROM userevent ue WHERE ue.absence='1'
但是它返回的结果是
null
。是否知道错误?如果事件实体中存在相关实体的对象,则可以将它们合并以获得所需的结果:
select e from Event e join e.userevent ue where ue.absence = '1'
试试这个:
SELECT e.* FROM Event e where e.idEvent
IN (SELECT ue.idEventfk FROM userevent ue WHERE ue.absence='1')
您可以使用
EXISTS
子句:
SELECT e FROM Event e
where exists
(SELECT ue FROM userevent ue WHERE e.idEvent = ue.idEventfk and ue.absence='1')
不提供实体?或者说当您执行上述操作时生成了什么SQL?