JPQL 中的子选择
Subselect in JPQL
希望在 JPQL 中执行可能的子选择。我经常使用 SQL 并希望执行这样的查询:
Select ((Select SUM(e.hours.hours) from app$Time e
where e.type = 'Purchased')
-
(Select SUM(f.hours.hours) from app$Time f
where f.type = 'Used'))
我还没有看到很多 JPQL 执行这样的查询的例子,希望这是可能的。
周杰伦,
JPA 2.1 规范不支持 select 列表中的子查询。
来自规范:
SELECT 子句可以包含以下一个或多个元素:一个标识变量,它
范围涵盖抽象模式类型、单值路径表达式、标量表达式、聚合
表达式,构造函数表达式。
解决方法:您可以执行两个 JPQL 查询,并在 java 代码
中从已购买的中减去已使用的
希望在 JPQL 中执行可能的子选择。我经常使用 SQL 并希望执行这样的查询:
Select ((Select SUM(e.hours.hours) from app$Time e
where e.type = 'Purchased')
-
(Select SUM(f.hours.hours) from app$Time f
where f.type = 'Used'))
我还没有看到很多 JPQL 执行这样的查询的例子,希望这是可能的。
周杰伦,
JPA 2.1 规范不支持 select 列表中的子查询。
来自规范:
SELECT 子句可以包含以下一个或多个元素:一个标识变量,它 范围涵盖抽象模式类型、单值路径表达式、标量表达式、聚合 表达式,构造函数表达式。
解决方法:您可以执行两个 JPQL 查询,并在 java 代码
中从已购买的中减去已使用的