我为 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 或条件查询)。
我不知道如何制作这个 max(count) 的东西,而且 JPA 似乎不喜欢 SELECT FROM SELECT...
如果有人有除了本机查询之外的想法(我现在就这样做),那就太好了。
我还没有检查 JPA 规范,但考虑到休眠文档 http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#queryhql-subqueries says
请注意,HQL 子查询只能出现在 select 或 where
条款。
我非常怀疑您的查询是否可以转换为有效的 JPQL 查询。
您必须继续使用这个本机 SQL 查询。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)