Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL查询到JPQL one_Sql_Jpa_Jpql - Fatal编程技术网

SQL查询到JPQL one

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。是否知道错误?如果

我正在尝试转换此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 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?