QueryDSL:在 JPAQuery.from() 中使用 JPASubQuery
Posted
技术标签:
【中文标题】QueryDSL:在 JPAQuery.from() 中使用 JPASubQuery【英文标题】:QueryDSL: Use a JPASubQuery in JPAQuery.from() 【发布时间】:2015-08-07 15:00:44 【问题描述】:我有一个类似的 SQL:
查询 1:
SELECT
t.name,
sum(t.value)
FROM
myTable t
WHERE
-- conditions...
GROUP BY
t.name
HAVING sum(t.value) >= 100
我有:
查询 2:
select count(*) from (
-- QUERY1
) as countQuery
我正在尝试在 QueryDSL 上执行此操作。 我已经将查询 1 作为 JPAQuery。 现在需要将其用作子查询,所以我正在尝试执行以下操作:
JPASubQuery subQuery = new JPASubQuery(query1.getMetadata());
new JPAQuery().from(subquery).count();
但不能在 FROM 子句中添加子查询。
这将是一个不错的功能。
【问题讨论】:
【参考方案1】:好的,由于 JPA 的限制,这是不可能的:
https://github.com/querydsl/querydsl/issues/1471
【讨论】:
以上是关于QueryDSL:在 JPAQuery.from() 中使用 JPASubQuery的主要内容,如果未能解决你的问题,请参考以下文章