JPA - MAX of COUNT或SELECT FROM SELECT [英] JPA - MAX of COUNT or SELECT FROM SELECT
问题描述
我为MySQL写了以下查询:
I wrote the following query for MySQL:
SELECT subquery.t1_column1,
subquery.t2_id,
MAX(subquery.val)
FROM (
SELECT t1.column1 as t1_column1,
t1.id_t2 AS t2_id,
count(1) AS val
FROM table1 t1
INNER JOIN table2 t2
ON t2.id = t1.id_t2
GROUP BY t1.id_t2
) subquery
GROUP BY t1_column1
我想将其翻译成JPA(JPQL或条件查询)。
And I'd like to translate it into JPA (JPQL or criteria query).
我不知道如何做这个max(count)事情,JPA似乎不喜欢SELECT FROM SELECT ...
I don't know how to make this max(count) thing, and JPA doesn't seem to like the SELECT FROM SELECT...
推荐答案
我有一个想法而不是本地查询没有检查tha JPA规范,但考虑到 Hibernate文档说
I haven't checked tha JPA specification, but given that the Hibernate documentation says
请注意,HQL子查询只能出现在select或
子句中。 / p>
Note that HQL subqueries can occur only in the select or where clauses.
我非常怀疑您的查询可以转换为有效的JPQL查询。
I very much doubt that your query can be transformed in a valid JPQL query.
您必须继续使用这个本机SQL查询。
You'll have to keep using this native SQL query.
这篇关于JPA - MAX of COUNT或SELECT FROM SELECT的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!