【发布时间】:2020-05-31 17:36:39
【问题描述】:
鉴于以下包含子选择连接的本机 SQL 查询,有没有办法将其转换为 JPQL 查询(或者,是否可以使用 @SqlResultSetMapping 映射它,这样我就不必执行数以千计的后续查询来填充我的对象(例如,在这种情况下,Foo 包含对单个 Bar 的引用和 Baz 实体的列表):
SELECT
foo.*, bar.*, baz.*
FROM
foo
INNER JOIN
bar ON foo.bar_id = bar.id
INNER JOIN
baz ON bar.baz_id = baz.id
INNER JOIN
(SELECT
bar_id, MAX(some_int) ct
FROM
foo
WHERE
some_int <= 2
GROUP BY bar_id) max_id ON max_id.bar_id = foo.bar_id
WHERE
foo.some_int = max_id.ct;
【问题讨论】:
标签: sql hibernate spring-data-jpa jpql